@dflat-core/web 1.0.60 → 1.0.62
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/dflat-core-web-core-model.mjs +23 -1
- package/fesm2022/dflat-core-web-core-model.mjs.map +1 -1
- package/fesm2022/dflat-core-web-core-services.mjs +15 -1
- package/fesm2022/dflat-core-web-core-services.mjs.map +1 -1
- package/fesm2022/dflat-core-web-core-ux-testing.mjs +8 -0
- package/fesm2022/dflat-core-web-core-ux-testing.mjs.map +1 -1
- package/fesm2022/dflat-core-web-core-ux.mjs +154 -5
- package/fesm2022/dflat-core-web-core-ux.mjs.map +1 -1
- package/fesm2022/dflat-core-web-system-data.mjs +10 -0
- package/fesm2022/dflat-core-web-system-data.mjs.map +1 -1
- package/fesm2022/dflat-core-web-system-model.mjs.map +1 -1
- package/fesm2022/dflat-core-web-system-root.mjs +1 -21
- package/fesm2022/dflat-core-web-system-root.mjs.map +1 -1
- package/fesm2022/dflat-core-web-system-ux.mjs +2821 -1022
- package/fesm2022/dflat-core-web-system-ux.mjs.map +1 -1
- package/package.json +1 -1
- package/types/dflat-core-web-core-model.d.ts +38 -0
- package/types/dflat-core-web-core-services.d.ts +7 -1
- package/types/dflat-core-web-core-ux-testing.d.ts +8 -0
- package/types/dflat-core-web-core-ux.d.ts +108 -1
- package/types/dflat-core-web-system-data.d.ts +4 -2
- package/types/dflat-core-web-system-model.d.ts +103 -73
- package/types/dflat-core-web-system-root.d.ts +0 -2
- package/types/dflat-core-web-system-ux.d.ts +543 -226
|
@@ -2,42 +2,42 @@ import * as i0 from "@angular/core";
|
|
|
2
2
|
import { AfterViewInit, ElementRef, EventEmitter, InjectionToken, Injector, ModuleWithProviders, OnDestroy, OnInit, Renderer2, Type } from "@angular/core";
|
|
3
3
|
import * as i7 from "@dflat-core/web/core";
|
|
4
4
|
import { EnsureModuleLoadedOnceGuard, EnvironmentBase } from "@dflat-core/web/core";
|
|
5
|
-
import * as
|
|
5
|
+
import * as i125 from "@angular/router";
|
|
6
6
|
import { ActivatedRoute, Router, Routes } from "@angular/router";
|
|
7
|
-
import * as
|
|
8
|
-
import { Action, ActionService, ActionsComponent, AlertService, ApplicationService, BaseComponent, BaseEditorComponent, DefaultLayoutComponent, DynamicFormComponent, EntityFacade, EntitySection, EntitySectionProvider, EntitySelector, FacadeModalService, IActionComponent, IIsCancel, IPpService, ISectionConfig, ImageService, LayoutPreferences, ModalService, NewEditorComponent, OrderableModalService, SelectorMapperServiceBase } from "@dflat-core/web/core-ux";
|
|
9
|
-
import * as
|
|
10
|
-
import { ActivationResults, AddressView, AddressViewFilterViewModel, ChangePasswordViewModel, CompanyFilterViewModel, CompanyView, Country, CountryFilterViewModel, Currency, CurrencyFilterViewModel, CustomFieldFilterViewModel, CustomFieldGroup, CustomFieldGroupEntityFilterViewModel, CustomFieldGroupEntityView, CustomFieldGroupFilterViewModel, CustomFieldGroupItemFilterViewModel, CustomFieldGroupItemView, CustomFieldOptionsFilterViewModel, CustomFieldOptionsView, CustomFieldValueFilterViewModel, CustomFieldValueView, CustomFieldView, DayInfo, DayInfoFilterViewModel, EntityFiles, EntityFilesFilterViewModel, ErrorCategory, ErrorCategoryFilterViewModel, ExchangeRateFilterViewModel, ExchangeRateView, FileDescriptor, FileTypes, FilesFilterViewModel, FilesView, ImageUploadEvent, Keyword, KeywordFilterViewModel, MetaEntity, MetaEntityField, MetaEntityFieldFilterViewModel, MetaEntityFilterViewModel, MetaEntityFormFieldFilterViewModel, MetaEntityFormFieldView, MetaEntityFormFilterViewModel, MetaEntityFormSectionFilterViewModel, MetaEntityFormSectionView, MetaEntityFormView, MetaEntityKeyword, MetaEntityKeywordFilterViewModel, MetaEntityRelation, MetaEntityRelationDefinition, MetaEntityRelationDefinitionFilterViewModel, MetaEntityRelationFilterViewModel, MetaEntityTranslation, MetaEntityTranslationFilterViewModel, MetaEntityViewField, MetaEntityViewFieldFilterViewModel, News, NewsFilterViewModel, ParameterSection, ParameterSectionFilterViewModel, ParameterValueView, ParameterValueViewFilterViewModel, ParameterView, ParameterViewFilterViewModel, Permission, PermissionFilterViewModel, PermissionView, PresentationContext, PresentationProfile, PresentationProfileFilterViewModel, PresentationProfileItem, PresentationProfileItemFilterViewModel, PresentationProfileItemView, PresentationProfilePurposes,
|
|
11
|
-
import * as
|
|
12
|
-
import { ApiError, ColumnDescriptor, EntityViewModel, EntityViewModelWithFields, FilterDescriptor, HistoryItem, IExternalLoginProvider, IUserCredential, ImageFormats, SaveResult, Section, SpecificSection, User } from "@dflat-core/web/core-model";
|
|
13
|
-
import * as
|
|
14
|
-
import {
|
|
7
|
+
import * as i114 from "@dflat-core/web/core-ux";
|
|
8
|
+
import { Action, ActionService, ActionsComponent, AlertService, ApplicationService, BaseComponent, BaseEditorComponent, BaseEntityEditor, DefaultLayoutComponent, DynamicFormComponent, EntityFacade, EntitySection, EntitySectionProvider, EntitySelector, FacadeModalService, IActionComponent, IIsCancel, IPpService, ISectionConfig, ImageService, LayoutPreferences, ModalService, NewEditorComponent, OrderableModalService, SelectorMapperServiceBase, ValidationService } from "@dflat-core/web/core-ux";
|
|
9
|
+
import * as i117 from "@dflat-core/web/system-model";
|
|
10
|
+
import { ActivationResults, AddressView, AddressViewFilterViewModel, ChangePasswordViewModel, CompanyFilterViewModel, CompanyView, Country, CountryFilterViewModel, Currency, CurrencyFilterViewModel, CustomFieldFilterViewModel, CustomFieldGroup, CustomFieldGroupEntityFilterViewModel, CustomFieldGroupEntityView, CustomFieldGroupFilterViewModel, CustomFieldGroupItemFilterViewModel, CustomFieldGroupItemView, CustomFieldOptionsFilterViewModel, CustomFieldOptionsView, CustomFieldValueFilterViewModel, CustomFieldValueView, CustomFieldView, DayInfo, DayInfoFilterViewModel, EntityFiles, EntityFilesFilterViewModel, ErrorCategory, ErrorCategoryFilterViewModel, ExchangeRateFilterViewModel, ExchangeRateView, FieldFilterTypes, FileDescriptor, FileTypes, FilesFilterViewModel, FilesView, FormEditorContext, ImageUploadEvent, Keyword, KeywordFilterViewModel, MetaEntity, MetaEntityField, MetaEntityFieldFilterViewModel, MetaEntityFilterViewModel, MetaEntityFormFieldFilterViewModel, MetaEntityFormFieldView, MetaEntityFormFilterViewModel, MetaEntityFormSectionFilterViewModel, MetaEntityFormSectionView, MetaEntityFormView, MetaEntityKeyword, MetaEntityKeywordFilterViewModel, MetaEntityRelation, MetaEntityRelationDefinition, MetaEntityRelationDefinitionFilterViewModel, MetaEntityRelationFilterViewModel, MetaEntityTranslation, MetaEntityTranslationFilterViewModel, MetaEntityViewField, MetaEntityViewFieldFilterViewModel, News, NewsFilterViewModel, ParameterSection, ParameterSectionFilterViewModel, ParameterValueView, ParameterValueViewFilterViewModel, ParameterView, ParameterViewFilterViewModel, Permission, PermissionFilterViewModel, PermissionView, PresentationContext, PresentationProfile, PresentationProfileFilterViewModel, PresentationProfileItem, PresentationProfileItemFilterViewModel, PresentationProfileItemView, PresentationProfilePurposes, PresentationProfileView, RatingFilterViewModel, RatingSummary, RatingSummaryFilterViewModel, RatingView, RequestEntity, RequestEntityFilterViewModel, RequestFilterViewModel, RequestResultFilterViewModel, RequestResultView, RequestType, RequestTypeFilterViewModel, RequestView, ResourceKey, ResourceKeyFilterViewModel, ResourceLanguage, ResourceLanguageFilterViewModel, ResourceTranslationFilterViewModel, ResourceTranslationView, RoleFilterViewModel, RolePermission, RolePermissionFilterViewModel, RoleView, SubcompanyFilterViewModel, SupplierCompany, SupplierCompanyFilterViewModel, SupplierFilterViewModel, SupplierView, SynchronizedCompanyView, SynchronizedCompanyViewFilterViewModel, TvaRateFilterViewModel, TvaRateView, UploadFileResult, UserAccount, UserAccountCompanyFilterViewModel, UserAccountCompanyView, UserAccountFilterViewModel, UserAccountLoginFilterViewModel, UserAccountLoginView, UserAccountNews, UserAccountNewsFilterViewModel, UserAccountRoleFilterViewModel, UserAccountRoleView, UserAccountToken, UserAccountTokenFilterViewModel, UserFavorite, UserFavoriteFilterViewModel, UserGroup, UserGroupDefinitionFilterViewModel, UserGroupDefinitionView, UserGroupFilterViewModel, UserHistory, UserHistoryFilterViewModel, UserPermissionView, UserPermissionViewFilterViewModel, UserProfileViewModel, UserSession, UserSessionFilterViewModel, Version, VersionFilterViewModel } from "@dflat-core/web/system-model";
|
|
11
|
+
import * as i113 from "@dflat-core/web/core-model";
|
|
12
|
+
import { ApiError, ColumnDescriptor, EntityViewModel, EntityViewModelWithFields, FieldDescriptor, FilterDescriptor, HistoryItem, IExternalLoginProvider, IUserCredential, ImageFormats, PropertyEditorEvent, SaveResult, Section, SpecificSection, TreeItem, User } from "@dflat-core/web/core-model";
|
|
13
|
+
import * as i108 from "ngx-bootstrap/modal";
|
|
14
|
+
import { BsModalService } from "ngx-bootstrap/modal";
|
|
15
15
|
import { Observable, Subject, Subscription } from "rxjs";
|
|
16
|
+
import * as i118 from "@dflat-core/web/system-data";
|
|
17
|
+
import { AccountDataService, CompanyDataService, ConfigDataService, CountryDataService, CurrencyDataService, CustomFieldGroupEntityDataService, CustomFieldGroupItemDataService, CustomFieldOptionsDataService, ExchangeRateDataService, FilesDataService, MetaEntityDataService, MetaEntityFieldDataService, MetaEntityFormDataService, PermissionDataService, PresentationProfileDataService, PresentationProfileItemDataService, SupplierDataService, TvaRateDataService, UserAccountCompanyDataService, UserAccountDataService, UserAccountRoleDataService, UserGroupDefinitionDataService } from "@dflat-core/web/system-data";
|
|
16
18
|
import * as i14 from "ngx-toastr";
|
|
17
19
|
import { ToastrService } from "ngx-toastr";
|
|
18
20
|
import * as i9 from "@dflat-core/web/core-services";
|
|
19
21
|
import { AuthInterceptor, AuthService, BreadcrumbService, ExternalLoginService, HubService, IExternalLoginResult, LocalStoreManager, MenuItem, MenuService, PermissionService, UserService } from "@dflat-core/web/core-services";
|
|
20
22
|
import * as i2 from "@angular/platform-browser";
|
|
21
23
|
import { Title } from "@angular/platform-browser";
|
|
22
|
-
import * as
|
|
23
|
-
import { NgForm, UntypedFormBuilder, UntypedFormGroup } from "@angular/forms";
|
|
24
|
-
import * as
|
|
24
|
+
import * as i112 from "@angular/forms";
|
|
25
|
+
import { FormControl, FormGroup, NgForm, UntypedFormBuilder, UntypedFormGroup } from "@angular/forms";
|
|
26
|
+
import * as i124 from "@samotics/ngx-treeview";
|
|
25
27
|
import { TreeviewConfig, TreeviewItem } from "@samotics/ngx-treeview";
|
|
26
|
-
import * as
|
|
28
|
+
import * as i111 from "@kolkov/angular-editor";
|
|
27
29
|
import { AngularEditorConfig } from "@kolkov/angular-editor";
|
|
30
|
+
import * as i109 from "@angular/cdk/drag-drop";
|
|
31
|
+
import { CdkDragDrop } from "@angular/cdk/drag-drop";
|
|
28
32
|
import { HttpErrorResponse, HttpEvent } from "@angular/common/http";
|
|
29
33
|
import { NgxImageCompressService } from "ngx-image-compress";
|
|
30
|
-
import * as
|
|
31
|
-
import
|
|
32
|
-
import * as
|
|
33
|
-
import
|
|
34
|
-
import * as
|
|
35
|
-
import * as
|
|
36
|
-
import * as
|
|
37
|
-
import * as i119 from "@ng-select/ng-select";
|
|
38
|
-
import * as i120 from "ng-recaptcha-2";
|
|
39
|
-
import * as i121 from "ng-http-loader";
|
|
40
|
-
import * as i122 from "ngx-dropzone";
|
|
34
|
+
import * as i110 from "@angular/common";
|
|
35
|
+
import * as i116 from "@dflat-core/web/core-data";
|
|
36
|
+
import * as i119 from "@dflat-core/web/system-root";
|
|
37
|
+
import * as i120 from "@ng-select/ng-select";
|
|
38
|
+
import * as i121 from "ng-recaptcha-2";
|
|
39
|
+
import * as i122 from "ng-http-loader";
|
|
40
|
+
import * as i123 from "ngx-dropzone";
|
|
41
41
|
import * as i3 from "@angular/platform-browser/animations";
|
|
42
42
|
import * as i5 from "@swimlane/ngx-datatable";
|
|
43
43
|
import * as i15 from "ngx-bootstrap/accordion";
|
|
@@ -94,16 +94,77 @@ export declare abstract class BaseCompanyComponent extends BaseComponent<Company
|
|
|
94
94
|
static ɵfac: i0.ɵɵFactoryDeclaration<BaseCompanyComponent, never>;
|
|
95
95
|
static ɵdir: i0.ɵɵDirectiveDeclaration<BaseCompanyComponent, never, never, {}, {}, never, never, true, never>;
|
|
96
96
|
}
|
|
97
|
+
export declare const PP_GRP_STANDARD = "standard";
|
|
98
|
+
export declare const PP_GRP_CUSTOM = "custom";
|
|
99
|
+
export interface PpConfig {
|
|
100
|
+
metaEntityKey: string;
|
|
101
|
+
title?: string;
|
|
102
|
+
purpose?: PresentationProfilePurposes;
|
|
103
|
+
embedded?: boolean;
|
|
104
|
+
supplierId?: number | null;
|
|
105
|
+
roleId?: number | null;
|
|
106
|
+
}
|
|
107
|
+
export interface PpGroup {
|
|
108
|
+
id: string;
|
|
109
|
+
label: string;
|
|
110
|
+
isCustom: boolean;
|
|
111
|
+
}
|
|
112
|
+
export interface PpResult {
|
|
113
|
+
purpose: PresentationProfilePurposes;
|
|
114
|
+
profileId: number | null;
|
|
115
|
+
columns: PresentationProfileItem[];
|
|
116
|
+
}
|
|
117
|
+
export interface PpExportSplit {
|
|
118
|
+
columns: string[];
|
|
119
|
+
customFieldIds: number[];
|
|
120
|
+
}
|
|
121
|
+
export declare class PresentationProfileTransformer {
|
|
122
|
+
/**
|
|
123
|
+
* Build the display groups from a catalog: a "standard" group + one group per custom-field
|
|
124
|
+
* group (by GroupId/GroupName provided by the backend), falling back to a single "Attributs".
|
|
125
|
+
*/
|
|
126
|
+
static buildGroups(catalog: PresentationProfileItem[]): PpGroup[];
|
|
127
|
+
/**
|
|
128
|
+
* Converts resolved PresentationProfileItem[] into ColumnDescriptor[] for the data grid.
|
|
129
|
+
* Standard columns are matched from the backend descriptors by Property (ColumnKey);
|
|
130
|
+
* custom-field columns get a synthetic text descriptor.
|
|
131
|
+
* item.Label is the custom override saved with the profile; it is null when the column keeps its
|
|
132
|
+
* natural label, which is then the backend descriptor's Name (the column key only as a last resort).
|
|
133
|
+
*/
|
|
134
|
+
static buildDescriptors(items: PresentationProfileItem[], backendDescriptors: ColumnDescriptor[]): ColumnDescriptor[];
|
|
135
|
+
/** User profile selection → unified PresentationContext for savePresentationProfile (Profile carries Items). */
|
|
136
|
+
static toUserPreferenceContext(items: PresentationProfileItem[], key: string, purpose: number, label?: string | null, profile?: PresentationProfile | null): PresentationContext;
|
|
137
|
+
/** Admin selection → unified PresentationContext for savePresentationProfile (Profile carries Items). */
|
|
138
|
+
static toAdminConfigContext(items: PresentationProfileItem[], profile: PresentationProfile): PresentationContext;
|
|
139
|
+
/** Normalises selected columns into persistable items (order = position). */
|
|
140
|
+
private static toSaveItems;
|
|
141
|
+
/** Split selected items into standard column keys and custom-field ids (for export payloads). */
|
|
142
|
+
static splitForExport(items: PresentationProfileItem[]): PpExportSplit;
|
|
143
|
+
}
|
|
144
|
+
export declare class PresentationProfileActionService {
|
|
145
|
+
private readonly modalService;
|
|
146
|
+
constructor(modalService: BsModalService);
|
|
147
|
+
private readonly selectionSubject;
|
|
148
|
+
private readonly cancelledSubject;
|
|
149
|
+
readonly selectionConfirmed$: Observable<PpResult>;
|
|
150
|
+
readonly selectionCancelled$: Observable<void>;
|
|
151
|
+
open(config: PpConfig): void;
|
|
152
|
+
splitForExport(columns: PpResult['columns']): PpExportSplit;
|
|
153
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PresentationProfileActionService, never>;
|
|
154
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
|
|
155
|
+
}
|
|
97
156
|
declare namespace company_component_d_exports {
|
|
98
157
|
export { CompanyComponent };
|
|
99
158
|
}
|
|
100
159
|
export declare class CompanyComponent extends BaseCompanyComponent {
|
|
101
160
|
protected route: ActivatedRoute;
|
|
102
161
|
private systemSection;
|
|
162
|
+
private profileSelector;
|
|
103
163
|
ADDRESS_SECTION: string;
|
|
104
164
|
SUBCOMPANY_SECTION: string;
|
|
105
|
-
constructor(app: ApplicationService, route: ActivatedRoute, systemSection: SystemSectionService);
|
|
165
|
+
constructor(app: ApplicationService, route: ActivatedRoute, systemSection: SystemSectionService, profileSelector: PresentationProfileActionService);
|
|
106
166
|
ngOnInit(): void;
|
|
167
|
+
selectColumns(): void;
|
|
107
168
|
static ɵfac: i0.ɵɵFactoryDeclaration<CompanyComponent, never>;
|
|
108
169
|
static ɵcmp: i0.ɵɵComponentDeclaration<CompanyComponent, "msw-company", never, {}, {}, never, ["[actionsPanelContent]", "*"], false, never>;
|
|
109
170
|
}
|
|
@@ -619,8 +680,13 @@ declare namespace metaentityform_component_d_exports {
|
|
|
619
680
|
/**
|
|
620
681
|
* Recherche et édition des MetaEntityFormView : code spécifique du composant (la partie générée
|
|
621
682
|
* est BaseMetaEntityFormComponent). Créé par codegenerator (dflat -g ts), qui ne le modifie plus.
|
|
683
|
+
* L'éditeur de formulaire (FormEditorComponent) remplace le formulaire d'édition standard : onglet
|
|
684
|
+
* « Propriétés » et onglet « Définition » (sections et champs), enregistrés par l'action
|
|
685
|
+
* « Enregistrer » de l'écran.
|
|
622
686
|
*/
|
|
623
687
|
export declare class MetaEntityFormComponent extends BaseMetaEntityFormComponent {
|
|
688
|
+
protected route: ActivatedRoute;
|
|
689
|
+
constructor(app: ApplicationService, route: ActivatedRoute);
|
|
624
690
|
static ɵfac: i0.ɵɵFactoryDeclaration<MetaEntityFormComponent, never>;
|
|
625
691
|
static ɵcmp: i0.ɵɵComponentDeclaration<MetaEntityFormComponent, "msw-meta-entity-form-search", never, {}, {}, never, ["[actionsPanelContent]", "*"], false, never>;
|
|
626
692
|
}
|
|
@@ -2449,27 +2515,137 @@ export declare class RequestResultsComponent extends BaseComponent<RequestResult
|
|
|
2449
2515
|
static ɵfac: i0.ɵɵFactoryDeclaration<RequestResultsComponent, never>;
|
|
2450
2516
|
static ɵcmp: i0.ɵɵComponentDeclaration<RequestResultsComponent, "alg-request-results", never, {}, {}, never, ["[actionsPanelContent]", "*"], false, never>;
|
|
2451
2517
|
}
|
|
2518
|
+
/** Ligne des tableaux de permissions d'un rôle : une entité et ses permissions. */
|
|
2519
|
+
interface RolePermissionRow {
|
|
2520
|
+
/** Identifiant de la permission de l'entité, parente de celles de la ligne. */
|
|
2521
|
+
id: number;
|
|
2522
|
+
/** Libellé du groupe de la ligne (module de l'entité). */
|
|
2523
|
+
group: string;
|
|
2524
|
+
/** Libellé de l'entité. */
|
|
2525
|
+
label: string;
|
|
2526
|
+
/** Libellés des permissions de l'entité, dans l'ordre d'affichage : son jeu de droits. */
|
|
2527
|
+
columns: string[];
|
|
2528
|
+
/** Permissions de l'entité, alignées sur ses colonnes. */
|
|
2529
|
+
cells: TreeItem<Permission>[];
|
|
2530
|
+
/** Indique si la ligne est affichée : le rôle lui attribue des droits, ou elle vient d'être ajoutée. */
|
|
2531
|
+
shown: boolean;
|
|
2532
|
+
}
|
|
2533
|
+
/** Tableau de permissions d'un rôle : les entités affichées qui ont le même jeu de droits. */
|
|
2534
|
+
interface RolePermissionTable {
|
|
2535
|
+
/** Libellés des colonnes : le jeu de droits commun aux lignes. */
|
|
2536
|
+
columns: string[];
|
|
2537
|
+
/** Lignes du tableau. */
|
|
2538
|
+
rows: RolePermissionRow[];
|
|
2539
|
+
}
|
|
2540
|
+
/**
|
|
2541
|
+
* Permissions d'un rôle, construites depuis l'arbre des permissions : une ligne par entité, une colonne
|
|
2542
|
+
* par permission (Afficher, Ajouter, Modifier, Supprimer, Exporter, puis les autres). Seules les entités
|
|
2543
|
+
* auxquelles le rôle attribue des droits sont affichées, les autres s'ajoutent à la demande ; les lignes
|
|
2544
|
+
* affichées sont réparties en un tableau par jeu de droits.
|
|
2545
|
+
* Toute feuille de l'arbre a une case : une permission sans case serait retirée du rôle à l'enregistrement.
|
|
2546
|
+
*/
|
|
2547
|
+
declare class RolePermissionGrid {
|
|
2548
|
+
/** Colonnes placées en tête, dans cet ordre, quand elles existent. */
|
|
2549
|
+
static readonly standardColumns: string[];
|
|
2550
|
+
/** Colonne d'une permission sans enfant, qui n'est rattachée à aucune entité. */
|
|
2551
|
+
static readonly accessColumn: string;
|
|
2552
|
+
/** Libellé d'une permission sans description. */
|
|
2553
|
+
static readonly emptyLabel: string;
|
|
2554
|
+
/** Lignes de toutes les entités, affichées ou non, dans l'ordre de l'arbre. */
|
|
2555
|
+
readonly rows: RolePermissionRow[];
|
|
2556
|
+
/**
|
|
2557
|
+
* @param items Racines de l'arbre des permissions (modules).
|
|
2558
|
+
* @param selection Identifiants des permissions cochées, à la place de l'état de l'arbre : des
|
|
2559
|
+
* permissions modifiées et pas encore enregistrées.
|
|
2560
|
+
*/
|
|
2561
|
+
constructor(items: TreeItem<Permission>[], selection?: number[]);
|
|
2562
|
+
/** Indique si le nœud n'a pas d'enfant. */
|
|
2563
|
+
private static isLeaf;
|
|
2564
|
+
/** Libellé affiché d'un nœud. */
|
|
2565
|
+
private static getLabel;
|
|
2566
|
+
/**
|
|
2567
|
+
* Lignes affichées, réparties en un tableau par jeu de droits : les jeux les plus courts d'abord,
|
|
2568
|
+
* puis dans l'ordre de l'arbre.
|
|
2569
|
+
*/
|
|
2570
|
+
getTables(): RolePermissionTable[];
|
|
2571
|
+
/** Lignes non affichées : les entités que l'on peut ajouter. */
|
|
2572
|
+
getHiddenRows(): RolePermissionRow[];
|
|
2573
|
+
/**
|
|
2574
|
+
* Codes de permission (module.entité, en minuscules) des lignes non affichées.
|
|
2575
|
+
* @param codes Codes des permissions, par identifiant.
|
|
2576
|
+
*/
|
|
2577
|
+
getHiddenCodes(codes: Map<number, string>): string[];
|
|
2578
|
+
/**
|
|
2579
|
+
* Lignes non affichées d'une méta entité : celles dont la permission a pour code module.entité,
|
|
2580
|
+
* sans tenir compte de la casse.
|
|
2581
|
+
* @param codes Codes des permissions, par identifiant.
|
|
2582
|
+
* @param module Module de la méta entité.
|
|
2583
|
+
* @param entityName Nom de la méta entité.
|
|
2584
|
+
*/
|
|
2585
|
+
findHiddenRows(codes: Map<number, string>, module: string, entityName: string): RolePermissionRow[];
|
|
2586
|
+
/** Affiche des lignes, sans rien cocher. */
|
|
2587
|
+
show(rows: RolePermissionRow[]): void;
|
|
2588
|
+
/** Retire une ligne de l'affichage et décoche ses permissions. */
|
|
2589
|
+
hide(row: RolePermissionRow): void;
|
|
2590
|
+
/** Identifiants des permissions cochées. */
|
|
2591
|
+
getSelection(): number[];
|
|
2592
|
+
/** Indique si toutes les permissions des lignes sont cochées, pour une colonne ou pour toutes. */
|
|
2593
|
+
isAllChecked(rows: RolePermissionRow[], column?: number): boolean;
|
|
2594
|
+
/** Indique si une partie seulement des permissions des lignes est cochée, pour une colonne ou pour toutes. */
|
|
2595
|
+
isPartiallyChecked(rows: RolePermissionRow[], column?: number): boolean;
|
|
2596
|
+
/** Coche ou décoche les permissions des lignes, pour une colonne ou pour toutes. */
|
|
2597
|
+
setChecked(rows: RolePermissionRow[], checked: boolean, column?: number): void;
|
|
2598
|
+
/** Permissions des lignes, pour une colonne ou pour toutes. */
|
|
2599
|
+
private static getCells;
|
|
2600
|
+
}
|
|
2452
2601
|
declare namespace role_editor_component_d_exports {
|
|
2453
2602
|
export { RoleEditorComponent };
|
|
2454
2603
|
}
|
|
2455
|
-
|
|
2456
|
-
|
|
2457
|
-
|
|
2458
|
-
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2466
|
-
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2470
|
-
|
|
2471
|
-
|
|
2472
|
-
|
|
2604
|
+
/**
|
|
2605
|
+
* Éditeur spécifique des rôles, affiché par l'écran des rôles (RoleComponent) à la place du
|
|
2606
|
+
* formulaire standard : onglet « Propriétés » (champs du formulaire, rôle parent par le sélecteur de
|
|
2607
|
+
* rôles) et onglet « Définition » (permissions en tableaux, un par jeu de droits). L'enregistrement
|
|
2608
|
+
* passe par l'action « Enregistrer » de l'écran.
|
|
2609
|
+
*/
|
|
2610
|
+
export declare class RoleEditorComponent extends BaseEntityEditor<RoleView> implements OnInit {
|
|
2611
|
+
private permissionDataService;
|
|
2612
|
+
private metaEntityDataService;
|
|
2613
|
+
/** Onglet affiché : 0 pour « Propriétés », 1 pour « Définition ». */
|
|
2614
|
+
activeTab: number;
|
|
2615
|
+
/** Rôle dont les permissions sont chargées : les onglets ne s'affichent que pour lui. */
|
|
2616
|
+
loadedEntity: RoleView;
|
|
2617
|
+
/** Champ « Rôle parent » : nom du rôle en lecture seule, choix par le sélecteur de rôles. */
|
|
2618
|
+
parentField: FieldDescriptor;
|
|
2619
|
+
/** Permissions du rôle : entités en lignes, permissions en colonnes. */
|
|
2620
|
+
grid: RolePermissionGrid;
|
|
2621
|
+
/** Tableaux affichés : un par jeu de droits. */
|
|
2622
|
+
tables: RolePermissionTable[];
|
|
2623
|
+
/** Codes des permissions (module.entité), par identifiant : ils relient les lignes aux méta entités. */
|
|
2624
|
+
private permissionCodes;
|
|
2625
|
+
/** Clés des méta entités (EntityKey), par code de permission (module.entité, en minuscules). */
|
|
2626
|
+
private metaEntityKeys;
|
|
2627
|
+
/** Rôles dont il faut charger les permissions : seul le dernier demandé est gardé. */
|
|
2628
|
+
private load$;
|
|
2629
|
+
constructor(app: ApplicationService, validationService: ValidationService, permissionDataService: PermissionDataService, metaEntityDataService: MetaEntityDataService);
|
|
2630
|
+
ngOnInit(): void;
|
|
2631
|
+
/** Champs du formulaire des rôles : « Libellé » pour le nom, sélecteur de rôles pour le rôle parent. */
|
|
2632
|
+
protected alterSections(sections: Section[]): Section[];
|
|
2633
|
+
/** Charge les permissions du rôle sélectionné ; une ligne réémise sans changement garde son affichage. */
|
|
2634
|
+
protected onEntityChanged(entity: RoleView): void;
|
|
2635
|
+
/** Le nom du rôle parent suit le rôle choisi, pour la colonne de la grille. */
|
|
2636
|
+
onPropertyChanged(event: PropertyEditorEvent): void;
|
|
2637
|
+
/** Retire le rôle parent. */
|
|
2638
|
+
onClearParent(): void;
|
|
2639
|
+
/** Publie les permissions cochées : le rôle devient modifié, l'action « Enregistrer » les envoie. */
|
|
2640
|
+
onPermissionsChanged(): void;
|
|
2641
|
+
/** Charge les codes des permissions et les clés des méta entités, qui relient une ligne à sa méta entité. */
|
|
2642
|
+
private loadPermissionCodes;
|
|
2643
|
+
/** Ouvre le sélecteur de méta entités, limité aux entités absentes des tableaux, et ajoute celles choisies. */
|
|
2644
|
+
onAddRows(): void;
|
|
2645
|
+
/** Retire une entité des tableaux : le rôle ne lui attribue plus aucun droit. */
|
|
2646
|
+
onRemoveRow(row: RolePermissionRow): void;
|
|
2647
|
+
/** Recalcule les tableaux affichés. */
|
|
2648
|
+
private refreshTables;
|
|
2473
2649
|
static ɵfac: i0.ɵɵFactoryDeclaration<RoleEditorComponent, never>;
|
|
2474
2650
|
static ɵcmp: i0.ɵɵComponentDeclaration<RoleEditorComponent, "alg-role-editor", never, {}, {}, never, never, false, never>;
|
|
2475
2651
|
}
|
|
@@ -2655,6 +2831,234 @@ export declare class MetaEntityFieldEditorComponent extends NewEditorComponent<M
|
|
|
2655
2831
|
static ɵfac: i0.ɵɵFactoryDeclaration<MetaEntityFieldEditorComponent, never>;
|
|
2656
2832
|
static ɵcmp: i0.ɵɵComponentDeclaration<MetaEntityFieldEditorComponent, "alg-meta-entity-field-editor", never, {}, {}, never, never, false, never>;
|
|
2657
2833
|
}
|
|
2834
|
+
/** Section éditée : IsHidden (section masquée) vient du correctif System 01.07.02.57. */
|
|
2835
|
+
export type FormEditorSection = MetaEntityFormSectionView & {
|
|
2836
|
+
IsHidden?: boolean;
|
|
2837
|
+
};
|
|
2838
|
+
/** Nature d'une section de formulaire, déduite de ses indicateurs. */
|
|
2839
|
+
export declare enum FormEditorSectionKinds {
|
|
2840
|
+
/** Section de champs. */
|
|
2841
|
+
Fields = "fields",
|
|
2842
|
+
/** Onglet d'entités liées (relation 1..*) : DataMetaEntityId et FilterPropertyName. */
|
|
2843
|
+
Related = "related",
|
|
2844
|
+
/** Champs personnalisés (attributs). */
|
|
2845
|
+
CustomFields = "customfields",
|
|
2846
|
+
/** Fichiers de l'enregistrement. */
|
|
2847
|
+
Files = "files",
|
|
2848
|
+
/** Historique de l'enregistrement. */
|
|
2849
|
+
TrackRecords = "trackrecords"
|
|
2850
|
+
}
|
|
2851
|
+
/** Natures de section proposées par l'éditeur, avec leur libellé. */
|
|
2852
|
+
export declare const FormEditorSectionKindOptions: {
|
|
2853
|
+
value: FormEditorSectionKinds;
|
|
2854
|
+
label: string;
|
|
2855
|
+
}[];
|
|
2856
|
+
/**
|
|
2857
|
+
* État de l'éditeur de formulaire de l'administrateur, sans dépendance à Angular : sections et
|
|
2858
|
+
* champs du formulaire dans l'ordre d'affichage, sélection courante, ajouts, suppressions et
|
|
2859
|
+
* déplacements. FormEditorComponent l'affiche et publie toContext().Sections à chaque
|
|
2860
|
+
* modification ; à l'enregistrement, l'ordre des listes remplace les OrderNumber.
|
|
2861
|
+
*/
|
|
2862
|
+
export declare class FormEditorModel {
|
|
2863
|
+
form: MetaEntityFormView | null;
|
|
2864
|
+
sections: FormEditorSection[];
|
|
2865
|
+
catalog: MetaEntityFormFieldView[];
|
|
2866
|
+
entities: MetaEntity[];
|
|
2867
|
+
selectedSection: FormEditorSection | null;
|
|
2868
|
+
selectedField: MetaEntityFormFieldView | null;
|
|
2869
|
+
/** Vrai dès qu'une modification n'est pas enregistrée. */
|
|
2870
|
+
isDirty: boolean;
|
|
2871
|
+
/** Appelé à chaque modification (l'éditeur publie alors la définition vers l'écran). */
|
|
2872
|
+
onChange?: () => void;
|
|
2873
|
+
/** Charge le formulaire lu par MetaEntityForm/GetFormEditor et sélectionne sa première section. */
|
|
2874
|
+
load(context: FormEditorContext | null | undefined): void;
|
|
2875
|
+
/** Signale une modification faite directement sur une section ou un champ (saisie). */
|
|
2876
|
+
touch(): void;
|
|
2877
|
+
kindOf(section: FormEditorSection): FormEditorSectionKinds;
|
|
2878
|
+
/** Vrai pour une section qui porte des champs (les autres natures n'en affichent pas). */
|
|
2879
|
+
hasFields(section: FormEditorSection | null): boolean;
|
|
2880
|
+
/**
|
|
2881
|
+
* Change la nature d'une section. Une section d'entités liées reçoit la première table en
|
|
2882
|
+
* attendant le choix de l'administrateur ; ses champs sont conservés tant qu'elle n'est pas
|
|
2883
|
+
* enregistrée sous une autre nature que « Champs » (le formulaire ne les affiche plus).
|
|
2884
|
+
*/
|
|
2885
|
+
setKind(section: FormEditorSection, kind: FormEditorSectionKinds): void;
|
|
2886
|
+
/**
|
|
2887
|
+
* Table listée par une section d'entités liées. Le critère de filtre proposé est la clé
|
|
2888
|
+
* étrangère vers l'entité du formulaire (<Entité>Id), comme dans les scripts générés.
|
|
2889
|
+
*/
|
|
2890
|
+
setDataEntity(section: FormEditorSection, metaEntityId: number | null | undefined): void;
|
|
2891
|
+
/** Ajoute une section de champs à la fin du formulaire, avec un titre libre, et la sélectionne. */
|
|
2892
|
+
addSection(): FormEditorSection;
|
|
2893
|
+
/** Retire une section et ses champs (supprimés en base à l'enregistrement). */
|
|
2894
|
+
removeSection(section: FormEditorSection): void;
|
|
2895
|
+
/** Déplace une section de la position previousIndex à la position currentIndex. */
|
|
2896
|
+
moveSection(previousIndex: number, currentIndex: number): void;
|
|
2897
|
+
selectSection(section: FormEditorSection | null): void;
|
|
2898
|
+
/** Titres en double (sans tenir compte de la casse) : une section est désignée par son titre. */
|
|
2899
|
+
isDuplicateName(section: FormEditorSection): boolean;
|
|
2900
|
+
private uniqueSectionName;
|
|
2901
|
+
/** Tous les champs du formulaire, section par section. */
|
|
2902
|
+
get fields(): MetaEntityFormFieldView[];
|
|
2903
|
+
/** Colonnes de l'entité qui ne sont dans aucune section, filtrées par nom ou libellé. */
|
|
2904
|
+
availableColumns(search?: string): MetaEntityFormFieldView[];
|
|
2905
|
+
/** Ajoute une colonne du catalogue à la fin de la section sélectionnée et sélectionne le champ. */
|
|
2906
|
+
addField(column: MetaEntityFormFieldView): MetaEntityFormFieldView | null;
|
|
2907
|
+
/**
|
|
2908
|
+
* Ajoute un champ par le nom de sa propriété : la colonne du catalogue de ce nom (libellé et
|
|
2909
|
+
* type déduits), sinon un champ texte à paramétrer (propriété calculée du modèle, ex.
|
|
2910
|
+
* NewPassword), avec le libellé donné.
|
|
2911
|
+
*/
|
|
2912
|
+
addFreeField(propertyName: string, label?: string): MetaEntityFormFieldView | null;
|
|
2913
|
+
/** Retire un champ de sa section ; les champs qu'il conditionnait perdent leur condition. */
|
|
2914
|
+
removeField(field: MetaEntityFormFieldView): void;
|
|
2915
|
+
/** Déplace un champ dans sa section. */
|
|
2916
|
+
moveField(section: FormEditorSection, previousIndex: number, currentIndex: number): void;
|
|
2917
|
+
/** Déplace un champ à la fin d'une autre section de champs. */
|
|
2918
|
+
moveFieldToSection(field: MetaEntityFormFieldView, target: FormEditorSection): boolean;
|
|
2919
|
+
selectField(field: MetaEntityFormFieldView | null): void;
|
|
2920
|
+
sectionOf(field: MetaEntityFormFieldView): FormEditorSection | null;
|
|
2921
|
+
private findField;
|
|
2922
|
+
/** Propriété du champ conditionnant, ou null. */
|
|
2923
|
+
conditioningOf(field: MetaEntityFormFieldView): string | null;
|
|
2924
|
+
/** Champs qui peuvent conditionner field : tous les autres champs du formulaire. */
|
|
2925
|
+
conditioningCandidates(field: MetaEntityFormFieldView): MetaEntityFormFieldView[];
|
|
2926
|
+
/**
|
|
2927
|
+
* Relie field à son champ conditionnant, désigné par sa propriété (le serveur retrouve
|
|
2928
|
+
* l'identifiant, même pour un champ ajouté dans la même session), ou retire la condition.
|
|
2929
|
+
*/
|
|
2930
|
+
setConditioning(field: MetaEntityFormFieldView, propertyName: string | null): void;
|
|
2931
|
+
/** Message d'erreur si le formulaire ne peut pas être enregistré, sinon null (mêmes règles que le serveur). */
|
|
2932
|
+
validate(): string | null;
|
|
2933
|
+
/**
|
|
2934
|
+
* Définition du formulaire, sections et champs dans l'ordre d'affichage : publiée dans
|
|
2935
|
+
* MetaEntityFormView.Sections et enregistrée avec le formulaire (ou envoyée à
|
|
2936
|
+
* MetaEntityForm/SaveFormEditor).
|
|
2937
|
+
*/
|
|
2938
|
+
toContext(): FormEditorContext;
|
|
2939
|
+
private move;
|
|
2940
|
+
}
|
|
2941
|
+
/**
|
|
2942
|
+
* Volet de propriétés de l'éditeur de formulaire, affiché avec les composants des formulaires
|
|
2943
|
+
* (alg-field) : sections de champs standard et leur FormGroup, pour éditer un objet qui n'est pas
|
|
2944
|
+
* l'entité de l'écran (section ou champ du formulaire édité). Les propriétés portent un préfixe :
|
|
2945
|
+
* alg-field donne à ses éléments l'identifiant de la propriété, qui doit rester unique dans la page
|
|
2946
|
+
* (l'onglet « Propriétés » affiche déjà Label, Description...).
|
|
2947
|
+
*/
|
|
2948
|
+
declare class FormEditorPanel {
|
|
2949
|
+
private readonly prefix;
|
|
2950
|
+
/** Sections de champs du volet. */
|
|
2951
|
+
readonly sections: Section[];
|
|
2952
|
+
/** Formulaire des champs du volet. */
|
|
2953
|
+
readonly form: FormGroup<Record<string, FormControl<any>>>;
|
|
2954
|
+
/**
|
|
2955
|
+
* @param prefix Préfixe des propriétés du volet.
|
|
2956
|
+
* @param groups Sections du volet : titre et champs, désignés par la propriété de l'objet édité.
|
|
2957
|
+
*/
|
|
2958
|
+
constructor(prefix: string, groups: {
|
|
2959
|
+
name: string;
|
|
2960
|
+
fields: FieldDescriptor[];
|
|
2961
|
+
}[]);
|
|
2962
|
+
/** Champs du volet, à plat. */
|
|
2963
|
+
get fields(): FieldDescriptor[];
|
|
2964
|
+
/** Sections qui ont au moins un champ affiché. */
|
|
2965
|
+
get visibleSections(): Section[];
|
|
2966
|
+
/** Champ du volet qui édite la propriété property de l'objet. */
|
|
2967
|
+
field(property: string): FieldDescriptor;
|
|
2968
|
+
/** Propriété de l'objet édité par le champ. */
|
|
2969
|
+
propertyOf(field: FieldDescriptor): string;
|
|
2970
|
+
/** Valeur saisie dans le champ. */
|
|
2971
|
+
valueOf(field: FieldDescriptor): any;
|
|
2972
|
+
/** Affiche ou masque le champ de la propriété. */
|
|
2973
|
+
show(property: string, visible: boolean): void;
|
|
2974
|
+
/** Recopie les valeurs (par propriété de l'objet) dans le formulaire, sans émettre de modification. */
|
|
2975
|
+
patch(values: Record<string, any>): void;
|
|
2976
|
+
/** Recopie la valeur d'une seule propriété, sans émettre de modification. */
|
|
2977
|
+
set(property: string, value: any): void;
|
|
2978
|
+
}
|
|
2979
|
+
declare namespace form_editor_component_d_exports {
|
|
2980
|
+
export { FormEditorComponent };
|
|
2981
|
+
}
|
|
2982
|
+
/**
|
|
2983
|
+
* Éditeur de formulaire de l'administrateur, affiché par l'écran Formulaires (MetaEntityFormComponent)
|
|
2984
|
+
* à la place du formulaire d'édition standard : onglet « Propriétés » (champs du formulaire, avec les
|
|
2985
|
+
* composants des formulaires) et onglet « Définition » (sections ajoutées, supprimées, réordonnées ;
|
|
2986
|
+
* champs ajoutés par le sélecteur des colonnes de l'entité, supprimés, déplacés et paramétrés). Les
|
|
2987
|
+
* propriétés d'une section et les paramètres d'un champ s'affichent comme un formulaire standard
|
|
2988
|
+
* (FormEditorPanel, alg-field). L'état édité est tenu par FormEditorModel ; chaque modification est
|
|
2989
|
+
* publiée dans le formulaire sélectionné (MetaEntityFormView.Sections) et l'action « Enregistrer »
|
|
2990
|
+
* de l'écran envoie le tout (MetaEntityFormController.ProcessSave).
|
|
2991
|
+
*/
|
|
2992
|
+
export declare class FormEditorComponent extends BaseEntityEditor<MetaEntityFormView> implements OnInit {
|
|
2993
|
+
private readonly data;
|
|
2994
|
+
readonly model: FormEditorModel;
|
|
2995
|
+
readonly Kinds: typeof FormEditorSectionKinds;
|
|
2996
|
+
readonly fieldTypeOptions: {
|
|
2997
|
+
value: FieldFilterTypes;
|
|
2998
|
+
label: string;
|
|
2999
|
+
}[];
|
|
3000
|
+
/** Propriétés de la section sélectionnée, affichées comme un formulaire standard. */
|
|
3001
|
+
readonly sectionPanel: FormEditorPanel;
|
|
3002
|
+
/** Paramètres du champ sélectionné, affichés comme un formulaire standard. */
|
|
3003
|
+
readonly fieldPanel: FormEditorPanel;
|
|
3004
|
+
/** Onglet affiché : 0 Propriétés, 1 Définition. */
|
|
3005
|
+
activeTab: number;
|
|
3006
|
+
/** Formulaire dont la définition est chargée dans le modèle (undefined pendant le chargement). */
|
|
3007
|
+
loadedEntity: MetaEntityFormView;
|
|
3008
|
+
isLoading: boolean;
|
|
3009
|
+
message: string;
|
|
3010
|
+
freeProperty: string;
|
|
3011
|
+
/** Identifiant du formulaire dont la définition est chargée. */
|
|
3012
|
+
private loadedId;
|
|
3013
|
+
/** Formulaires dont il faut charger la définition : seul le dernier demandé est gardé. */
|
|
3014
|
+
private load$;
|
|
3015
|
+
constructor(app: ApplicationService, validationService: ValidationService, data: MetaEntityFormDataService);
|
|
3016
|
+
ngOnInit(): void;
|
|
3017
|
+
/**
|
|
3018
|
+
* Charge la définition du formulaire sélectionné. Une ligne réémise pendant l'édition (mêmes
|
|
3019
|
+
* modifications, pas encore enregistrées) garde la définition en cours ; après l'enregistrement,
|
|
3020
|
+
* elle est relue (identifiants des sections et des champs créés).
|
|
3021
|
+
*/
|
|
3022
|
+
protected onEntityChanged(entity: MetaEntityFormView): void;
|
|
3023
|
+
/** Publie la définition éditée : l'action « Enregistrer » de l'écran l'envoie avec le formulaire. */
|
|
3024
|
+
private publishDefinition;
|
|
3025
|
+
/** Vrai pour un formulaire pas encore enregistré : sa définition s'édite après sa création. */
|
|
3026
|
+
get isNew(): boolean;
|
|
3027
|
+
/** Ce qui empêcherait d'enregistrer la définition (titre en double, critère manquant...), sinon null. */
|
|
3028
|
+
get definitionError(): string | null;
|
|
3029
|
+
get selectedSection(): FormEditorSection | null;
|
|
3030
|
+
get selectedField(): MetaEntityFormFieldView | null;
|
|
3031
|
+
selectSection(section: FormEditorSection): void;
|
|
3032
|
+
addSection(): void;
|
|
3033
|
+
onSectionDrop(event: CdkDragDrop<FormEditorSection[]>): void;
|
|
3034
|
+
removeSection(section: FormEditorSection, event: Event): void;
|
|
3035
|
+
kindLabel(section: FormEditorSection): string;
|
|
3036
|
+
/** Applique à la section sélectionnée la propriété modifiée dans son volet. */
|
|
3037
|
+
readonly onSectionParam: (event: PropertyEditorEvent) => void;
|
|
3038
|
+
selectField(field: MetaEntityFormFieldView): void;
|
|
3039
|
+
onFieldDrop(event: CdkDragDrop<MetaEntityFormFieldView[]>): void;
|
|
3040
|
+
/**
|
|
3041
|
+
* Action « Ajouter » : ouvre le sélecteur des colonnes de l'entité du formulaire, sans celles qui
|
|
3042
|
+
* sont déjà dans le formulaire, et ajoute les colonnes choisies à la section sélectionnée.
|
|
3043
|
+
*/
|
|
3044
|
+
onAddFields(): void;
|
|
3045
|
+
/** Ajoute une propriété qui n'est pas une colonne de la table (colonne de la vue, propriété calculée). */
|
|
3046
|
+
addFreeField(): void;
|
|
3047
|
+
removeField(field: MetaEntityFormFieldView, event: Event): void;
|
|
3048
|
+
fieldTypeLabel(field: MetaEntityFormFieldView): string;
|
|
3049
|
+
/** Applique au champ sélectionné le paramètre modifié dans son volet. */
|
|
3050
|
+
readonly onFieldParam: (event: PropertyEditorEvent) => void;
|
|
3051
|
+
/** Obligatoire : indicateur du champ et validateur « requis » (ValidatorTypes, bit 32). */
|
|
3052
|
+
setRequired(field: MetaEntityFormFieldView, required: boolean): void;
|
|
3053
|
+
/** Recopie la section et le champ sélectionnés dans leurs volets, et règle les champs affichés. */
|
|
3054
|
+
private refreshPanels;
|
|
3055
|
+
/** Paramètres affichés selon le type du champ et sa condition d'affichage. */
|
|
3056
|
+
private refreshFieldVisibility;
|
|
3057
|
+
private textOf;
|
|
3058
|
+
private numberOf;
|
|
3059
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FormEditorComponent, never>;
|
|
3060
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormEditorComponent, "msw-form-editor", never, {}, {}, never, never, false, never>;
|
|
3061
|
+
}
|
|
2658
3062
|
declare namespace supplier_editor_component_d_exports {
|
|
2659
3063
|
export { SupplierEditorComponent };
|
|
2660
3064
|
}
|
|
@@ -2929,169 +3333,117 @@ export declare class UserCompanyComponent extends BaseUserAccountCompanyComponen
|
|
|
2929
3333
|
static ɵfac: i0.ɵɵFactoryDeclaration<UserCompanyComponent, never>;
|
|
2930
3334
|
static ɵcmp: i0.ɵɵComponentDeclaration<UserCompanyComponent, "alg-user-company", never, {}, {}, never, ["[actionsPanelContent]", "*"], false, never>;
|
|
2931
3335
|
}
|
|
2932
|
-
|
|
2933
|
-
export
|
|
2934
|
-
export interface PpConfig {
|
|
2935
|
-
metaEntityKey: string;
|
|
2936
|
-
title?: string;
|
|
2937
|
-
purpose?: PresentationProfilePurposes;
|
|
2938
|
-
embedded?: boolean;
|
|
2939
|
-
supplierId?: number | null;
|
|
2940
|
-
roleId?: number | null;
|
|
2941
|
-
}
|
|
2942
|
-
export interface PpGroup {
|
|
2943
|
-
id: string;
|
|
2944
|
-
label: string;
|
|
2945
|
-
isCustom: boolean;
|
|
2946
|
-
}
|
|
2947
|
-
export interface PpResult {
|
|
2948
|
-
purpose: PresentationProfilePurposes;
|
|
2949
|
-
profileId: number | null;
|
|
2950
|
-
columns: PresentationProfileItem[];
|
|
2951
|
-
}
|
|
2952
|
-
export interface PpExportSplit {
|
|
2953
|
-
columns: string[];
|
|
2954
|
-
customFieldIds: number[];
|
|
3336
|
+
declare namespace presentation_profile_editor_component_d_exports {
|
|
3337
|
+
export { PresentationProfileEditorComponent };
|
|
2955
3338
|
}
|
|
2956
|
-
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
|
|
2961
|
-
|
|
2962
|
-
|
|
2963
|
-
|
|
2964
|
-
|
|
2965
|
-
|
|
2966
|
-
|
|
2967
|
-
|
|
2968
|
-
|
|
2969
|
-
|
|
2970
|
-
/** User profile selection → unified PresentationContext for savePresentationProfile (Profile carries Items). */
|
|
2971
|
-
static toUserPreferenceContext(items: PresentationProfileItem[], key: string, purpose: number, label?: string | null, profile?: PresentationProfile | null): PresentationContext;
|
|
2972
|
-
/** Admin selection → unified PresentationContext for savePresentationProfile (Profile carries Items). */
|
|
2973
|
-
static toAdminConfigContext(items: PresentationProfileItem[], profile: PresentationProfile): PresentationContext;
|
|
2974
|
-
/** Normalises selected columns into persistable items (order = position). */
|
|
2975
|
-
private static toSaveItems;
|
|
2976
|
-
/** Split selected items into standard column keys and custom-field ids (for export payloads). */
|
|
2977
|
-
static splitForExport(items: PresentationProfileItem[]): PpExportSplit;
|
|
2978
|
-
}
|
|
2979
|
-
declare namespace presentation_profile_column_component_d_exports {
|
|
2980
|
-
export { PresentationProfileColumnComponent };
|
|
2981
|
-
}
|
|
2982
|
-
export declare class PresentationProfileColumnComponent implements OnInit, OnDestroy {
|
|
2983
|
-
private readonly data;
|
|
2984
|
-
private readonly itemData;
|
|
2985
|
-
readonly Scopes: typeof PresentationProfileScopes;
|
|
2986
|
-
readonly Purposes: typeof PresentationProfilePurposes;
|
|
2987
|
-
readonly scopeSections: {
|
|
2988
|
-
scope: PresentationProfileScopes;
|
|
2989
|
-
label: string;
|
|
2990
|
-
icon: string;
|
|
2991
|
-
}[];
|
|
2992
|
-
readonly purposeOptions: {
|
|
2993
|
-
value: PresentationProfilePurposes;
|
|
2994
|
-
label: string;
|
|
2995
|
-
}[];
|
|
2996
|
-
activeSection: number;
|
|
2997
|
-
filterKey: string;
|
|
2998
|
-
filterPurpose: number;
|
|
2999
|
-
filterScopeId: number | null;
|
|
3000
|
-
profiles: PresentationProfile[];
|
|
3001
|
-
activeProfile: PresentationProfile | null;
|
|
3002
|
-
isLoadingList: boolean;
|
|
3003
|
-
message: string;
|
|
3004
|
-
get filterIsPerimeter(): boolean;
|
|
3005
|
-
get scopeIdLabel(): string;
|
|
3339
|
+
/**
|
|
3340
|
+
* Éditeur spécifique des profils de présentation, affiché par l'écran des profils
|
|
3341
|
+
* (PresentationProfileScreenComponent) à la place du formulaire standard : onglet « Propriétés »
|
|
3342
|
+
* (formulaire par défaut de l'entité : table, libellé, finalité, portée, puis utilisateur, source de
|
|
3343
|
+
* données ou rôle selon la portée ; avec les composants des formulaires) et onglet « Colonnes »
|
|
3344
|
+
* (colonnes affichées, ordre et libellés). L'enregistrement passe par l'action « Enregistrer » de
|
|
3345
|
+
* l'écran : les colonnes modifiées sont publiées dans <c>Items</c> du profil.
|
|
3346
|
+
*/
|
|
3347
|
+
export declare class PresentationProfileEditorComponent extends BaseEntityEditor<PresentationProfileView> implements OnInit {
|
|
3348
|
+
private itemData;
|
|
3349
|
+
/** Onglet affiché : 0 pour « Propriétés », 1 pour « Colonnes ». */
|
|
3350
|
+
activeTab: number;
|
|
3351
|
+
/** Profil dont les colonnes sont chargées : les onglets ne s'affichent que pour lui. */
|
|
3352
|
+
loadedEntity: PresentationProfileView;
|
|
3006
3353
|
isLoading: boolean;
|
|
3007
|
-
|
|
3008
|
-
groups: PpGroup[];
|
|
3354
|
+
/** Colonnes de la table (catalogue). */
|
|
3009
3355
|
allItems: PresentationProfileItem[];
|
|
3356
|
+
/** Colonnes disponibles : celles du catalogue qui ne sont pas affichées, filtrées par la recherche. */
|
|
3010
3357
|
filteredItems: PresentationProfileItem[];
|
|
3358
|
+
/** Colonnes affichées, dans l'ordre. */
|
|
3011
3359
|
orderedSelection: PresentationProfileItem[];
|
|
3012
3360
|
selectedIds: Set<string>;
|
|
3013
|
-
selectedGroup: PpGroup | null;
|
|
3014
3361
|
searchText: string;
|
|
3015
3362
|
naturalLabelByKey: Map<string, string>;
|
|
3363
|
+
/**
|
|
3364
|
+
* Champs qui se choisissent à la création du profil et ne se modifient plus ensuite : ils
|
|
3365
|
+
* désignent le profil (table, finalité, portée, utilisateur, source de données ou rôle).
|
|
3366
|
+
*/
|
|
3367
|
+
private static readonly frozenFields;
|
|
3368
|
+
/** Champs dont le changement demande de relire le catalogue des colonnes. */
|
|
3369
|
+
private static readonly catalogFields;
|
|
3370
|
+
/** Profils dont il faut charger les colonnes : seul le dernier demandé est gardé. */
|
|
3371
|
+
private load$;
|
|
3016
3372
|
get isPerimeter(): boolean;
|
|
3017
3373
|
get selectedCount(): number;
|
|
3018
|
-
|
|
3019
|
-
get
|
|
3020
|
-
|
|
3021
|
-
private readonly destroy$;
|
|
3022
|
-
constructor(data: PresentationProfileDataService, itemData: PresentationProfileItemDataService);
|
|
3374
|
+
/** Dernier état du profil en cours d'édition : modifications non enregistrées comprises. */
|
|
3375
|
+
private get current();
|
|
3376
|
+
constructor(app: ApplicationService, validationService: ValidationService, itemData: PresentationProfileItemDataService);
|
|
3023
3377
|
ngOnInit(): void;
|
|
3024
|
-
|
|
3025
|
-
|
|
3026
|
-
|
|
3027
|
-
|
|
3028
|
-
|
|
3029
|
-
|
|
3030
|
-
|
|
3378
|
+
/** Champs du formulaire par défaut des profils ; la liste des tables ne propose que des tables (pas les vues). */
|
|
3379
|
+
protected alterSections(sections: Section[]): Section[];
|
|
3380
|
+
/**
|
|
3381
|
+
* Champ masqué selon la valeur du champ dont il dépend (formulaire en base : le champ
|
|
3382
|
+
* Utilisateur, Source de données ou Rôle ne s'affiche que pour sa portée).
|
|
3383
|
+
*/
|
|
3384
|
+
isFieldHidden(field: FieldDescriptor): boolean;
|
|
3385
|
+
/** Champ en lecture seule : celui du formulaire, ou un champ d'identité d'un profil déjà créé. */
|
|
3386
|
+
isFieldReadonly(field: FieldDescriptor): boolean;
|
|
3387
|
+
/** Charge les colonnes du profil sélectionné ; un profil réémis avec ses modifications garde son affichage. */
|
|
3388
|
+
protected onEntityChanged(entity: PresentationProfileView): void;
|
|
3389
|
+
/** La table ou la portée d'un profil change : le catalogue des colonnes est relu. */
|
|
3390
|
+
onPropertyChanged(event: PropertyEditorEvent): void;
|
|
3391
|
+
/** Catalogue des colonnes de la table (selon la portée) et colonnes enregistrées du profil. */
|
|
3392
|
+
private loadColumns$;
|
|
3393
|
+
private showColumns;
|
|
3394
|
+
private resetColumns;
|
|
3395
|
+
/** Publie les colonnes choisies : le profil devient modifié, l'action « Enregistrer » les envoie. */
|
|
3396
|
+
onColumnsChanged(): void;
|
|
3031
3397
|
getCatalogLabel(item: PresentationProfileItem): string;
|
|
3032
|
-
private getItemGroupId;
|
|
3033
|
-
private loadColumns;
|
|
3034
|
-
private resetEditor;
|
|
3035
|
-
selectGroup(group: PpGroup | null): void;
|
|
3036
3398
|
onSearch(): void;
|
|
3399
|
+
/** Colonnes disponibles : catalogue sans les colonnes affichées, restreint au texte cherché. */
|
|
3037
3400
|
private applyFilter;
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
|
-
|
|
3041
|
-
|
|
3042
|
-
toggleAll(): void;
|
|
3401
|
+
/** Affiche une colonne disponible : elle passe à la fin des colonnes affichées. */
|
|
3402
|
+
addItem(item: PresentationProfileItem): void;
|
|
3403
|
+
/** Affiche toutes les colonnes disponibles listées. */
|
|
3404
|
+
addAll(): void;
|
|
3043
3405
|
removeFromSelection(item: PresentationProfileItem): void;
|
|
3044
3406
|
onDrop(event: CdkDragDrop<PresentationProfileItem[]>): void;
|
|
3045
|
-
|
|
3046
|
-
static
|
|
3047
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PresentationProfileColumnComponent, "alg-pp-column", never, {}, {}, never, never, false, never>;
|
|
3048
|
-
}
|
|
3049
|
-
declare namespace presentation_profile_items_component_d_exports {
|
|
3050
|
-
export { PresentationProfileItemsComponent };
|
|
3407
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PresentationProfileEditorComponent, never>;
|
|
3408
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PresentationProfileEditorComponent, "alg-presentation-profile-editor", never, {}, {}, never, never, false, never>;
|
|
3051
3409
|
}
|
|
3052
|
-
|
|
3053
|
-
|
|
3054
|
-
|
|
3055
|
-
|
|
3056
|
-
|
|
3057
|
-
|
|
3058
|
-
|
|
3059
|
-
|
|
3060
|
-
|
|
3061
|
-
|
|
3062
|
-
|
|
3063
|
-
orderedSelection: PresentationProfileItem[];
|
|
3064
|
-
selectedIds: Set<string>;
|
|
3065
|
-
selectedGroup: PpGroup | null;
|
|
3066
|
-
searchText: string;
|
|
3067
|
-
naturalLabelByKey: Map<string, string>;
|
|
3068
|
-
get isPerimeter(): boolean;
|
|
3069
|
-
get selectedCount(): number;
|
|
3070
|
-
get canSave(): boolean;
|
|
3071
|
-
get allVisibleSelected(): boolean;
|
|
3072
|
-
get someVisibleSelected(): boolean;
|
|
3073
|
-
private readonly destroy$;
|
|
3074
|
-
constructor(data: PresentationProfileDataService, itemData: PresentationProfileItemDataService);
|
|
3410
|
+
/**
|
|
3411
|
+
* Recherche et édition des PresentationProfileView (partie générée) : titre, lien, clé d'entité et
|
|
3412
|
+
* permission, onglets des entités liées. Composant spécifique : PresentationProfileComponent.
|
|
3413
|
+
*/
|
|
3414
|
+
export declare abstract class BasePresentationProfileComponent extends BaseComponent<PresentationProfileFilterViewModel, PresentationProfileView> {
|
|
3415
|
+
protected route: ActivatedRoute;
|
|
3416
|
+
getTitle(): string;
|
|
3417
|
+
getPath(): string;
|
|
3418
|
+
getEntityKey(): string;
|
|
3419
|
+
get PermissionKey(): string;
|
|
3420
|
+
constructor(app: ApplicationService, route: ActivatedRoute);
|
|
3075
3421
|
ngOnInit(): void;
|
|
3076
|
-
|
|
3077
|
-
|
|
3078
|
-
|
|
3079
|
-
|
|
3080
|
-
|
|
3081
|
-
|
|
3082
|
-
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
|
|
3090
|
-
|
|
3091
|
-
|
|
3092
|
-
|
|
3093
|
-
|
|
3094
|
-
|
|
3422
|
+
/**
|
|
3423
|
+
* Onglets des entités liées (relation 1..*) : sections du formulaire par défaut
|
|
3424
|
+
* (metadata/04-forms/PresentationProfileForm.sql), déclarées par SystemGeneratedSectionService
|
|
3425
|
+
* (system-sections.generated.ts) et demandées au registre du socle par la clé de l'entité :
|
|
3426
|
+
* ce composant n'importe aucun composant d'onglet. Un onglet de la même entité déjà enregistré
|
|
3427
|
+
* par le composant spécifique n'est pas dupliqué.
|
|
3428
|
+
*/
|
|
3429
|
+
protected registerFormSections(): void;
|
|
3430
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<BasePresentationProfileComponent, never>;
|
|
3431
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<BasePresentationProfileComponent, never, never, {}, {}, never, never, true, never>;
|
|
3432
|
+
}
|
|
3433
|
+
declare namespace presentation_profile_screen_component_d_exports {
|
|
3434
|
+
export { PresentationProfileScreenComponent };
|
|
3435
|
+
}
|
|
3436
|
+
/**
|
|
3437
|
+
* Écran des profils de présentation : grille standard des profils (vue PresentationProfileView :
|
|
3438
|
+
* table, finalité, portée, utilisateur, source de données ou rôle) et, à la place du formulaire
|
|
3439
|
+
* d'édition standard, l'éditeur des profils (PresentationProfileEditorComponent). Nommé « Screen » :
|
|
3440
|
+
* PresentationProfileComponent est déjà le sélecteur de colonnes des grilles.
|
|
3441
|
+
*/
|
|
3442
|
+
export declare class PresentationProfileScreenComponent extends BasePresentationProfileComponent {
|
|
3443
|
+
protected route: ActivatedRoute;
|
|
3444
|
+
constructor(app: ApplicationService, route: ActivatedRoute);
|
|
3445
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PresentationProfileScreenComponent, never>;
|
|
3446
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PresentationProfileScreenComponent, "alg-presentation-profile-screen", never, {}, {}, never, ["[actionsPanelContent]", "*"], false, never>;
|
|
3095
3447
|
}
|
|
3096
3448
|
export interface PpResolverConfig {
|
|
3097
3449
|
metaEntityKey: string;
|
|
@@ -3202,7 +3554,7 @@ declare namespace system_ux_module_d_exports {
|
|
|
3202
3554
|
export declare class SystemUxModule extends EnsureModuleLoadedOnceGuard {
|
|
3203
3555
|
constructor(injector: Injector);
|
|
3204
3556
|
static ɵfac: i0.ɵɵFactoryDeclaration<SystemUxModule, never>;
|
|
3205
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SystemUxModule, [typeof AddressComponent, typeof CompanyComponent, typeof CountryComponent, typeof CurrencyComponent, typeof CustomFieldComponent, typeof CustomFieldGroupComponent, typeof CustomFieldGroupEntityComponent, typeof CustomFieldGroupItemComponent, typeof CustomFieldOptionsComponent, typeof CustomFieldValueComponent, typeof DayInfoComponent, typeof ErrorCategoryComponent, typeof ExchangeRateComponent, typeof FilesComponent, typeof KeywordComponent, typeof MetaEntityComponent, typeof MetaEntityFieldComponent, typeof MetaEntityFormComponent, typeof MetaEntityFormFieldComponent, typeof MetaEntityFormSectionComponent, typeof MetaEntityKeywordComponent, typeof MetaEntityRelationComponent, typeof MetaEntityRelationDefinitionComponent, typeof MetaEntityTranslationComponent, typeof MetaEntityViewFieldComponent, typeof NewsComponent, typeof ParameterComponent, typeof ParameterSectionComponent, typeof ParameterValueComponent, typeof PermissionComponent, typeof PresentationProfileItemComponent, typeof RatingComponent, typeof RatingSummaryComponent, typeof RequestComponent, typeof RequestEntityComponent, typeof RequestResultComponent, typeof RequestTypeComponent, typeof ResourceKeyComponent, typeof ResourceLanguageComponent, typeof ResourceTranslationComponent, typeof RoleComponent, typeof RolePermissionComponent, typeof SubcompanyComponent, typeof SupplierComponent, typeof SupplierCompanyComponent, typeof SynchronizedCompanyComponent, typeof TvaRateComponent, typeof UserAccountComponent, typeof UserAccountCompanyComponent, typeof UserAccountLoginComponent, typeof UserAccountNewsComponent, typeof UserAccountRoleComponent, typeof UserAccountTokenComponent, typeof UserFavoriteComponent, typeof UserGroupComponent, typeof UserGroupDefinitionComponent, typeof UserHistoryComponent, typeof UserPermissionViewComponent, typeof UserSessionComponent, typeof VersionComponent, typeof AccessDeniedComponent, typeof DFlatLayoutComponent, typeof DFlatSpinnerComponent, typeof HistoryComponent, typeof HomepageComponent, typeof SearchComponent, typeof SearchResultComponent, typeof UserMenuComponent, typeof UserProfileComponent, typeof ActivateComponent, typeof LoginComponent, typeof ResetPasswordComponent, typeof CompanyEditorComponent, typeof CountryEditorComponent, typeof CurrencyEditorComponent, typeof ExchangeRateEditorComponent, typeof NewsEditorComponent, typeof PermissionEditorComponent, typeof RequestEditorComponent, typeof RequestResultsComponent, typeof RoleEditorComponent, typeof UserRoleComponent, typeof UserPermissionComponent, typeof UserAccountEditorComponent, typeof UserProfileAccountComponent, typeof CustomFieldOptionsEditorComponent, typeof CustomFieldGroupEditorComponent, typeof CustomFieldGroupItemEditorComponent, typeof CustomFieldGroupEntityEditorComponent, typeof CustomFieldEditorComponent, typeof ConfigComponent, typeof ResourceLanguageEditorComponent, typeof ResourceTranslationEditorComponent, typeof MetaEntityFieldEditorComponent, typeof SupplierEditorComponent, typeof TvaRateEditorComponent, typeof TvaRateDetailComponent, typeof ImageUploadComponent, typeof AddressEditorComponent, typeof DWSupplyComponent, typeof EntityFilesComponent, typeof ExchangeRateDetailComponent, typeof UserGroupEditorComponent, typeof UserCompanyComponent, typeof
|
|
3557
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SystemUxModule, [typeof AddressComponent, typeof CompanyComponent, typeof CountryComponent, typeof CurrencyComponent, typeof CustomFieldComponent, typeof CustomFieldGroupComponent, typeof CustomFieldGroupEntityComponent, typeof CustomFieldGroupItemComponent, typeof CustomFieldOptionsComponent, typeof CustomFieldValueComponent, typeof DayInfoComponent, typeof ErrorCategoryComponent, typeof ExchangeRateComponent, typeof FilesComponent, typeof KeywordComponent, typeof MetaEntityComponent, typeof MetaEntityFieldComponent, typeof MetaEntityFormComponent, typeof MetaEntityFormFieldComponent, typeof MetaEntityFormSectionComponent, typeof MetaEntityKeywordComponent, typeof MetaEntityRelationComponent, typeof MetaEntityRelationDefinitionComponent, typeof MetaEntityTranslationComponent, typeof MetaEntityViewFieldComponent, typeof NewsComponent, typeof ParameterComponent, typeof ParameterSectionComponent, typeof ParameterValueComponent, typeof PermissionComponent, typeof PresentationProfileItemComponent, typeof RatingComponent, typeof RatingSummaryComponent, typeof RequestComponent, typeof RequestEntityComponent, typeof RequestResultComponent, typeof RequestTypeComponent, typeof ResourceKeyComponent, typeof ResourceLanguageComponent, typeof ResourceTranslationComponent, typeof RoleComponent, typeof RolePermissionComponent, typeof SubcompanyComponent, typeof SupplierComponent, typeof SupplierCompanyComponent, typeof SynchronizedCompanyComponent, typeof TvaRateComponent, typeof UserAccountComponent, typeof UserAccountCompanyComponent, typeof UserAccountLoginComponent, typeof UserAccountNewsComponent, typeof UserAccountRoleComponent, typeof UserAccountTokenComponent, typeof UserFavoriteComponent, typeof UserGroupComponent, typeof UserGroupDefinitionComponent, typeof UserHistoryComponent, typeof UserPermissionViewComponent, typeof UserSessionComponent, typeof VersionComponent, typeof AccessDeniedComponent, typeof DFlatLayoutComponent, typeof DFlatSpinnerComponent, typeof HistoryComponent, typeof HomepageComponent, typeof SearchComponent, typeof SearchResultComponent, typeof UserMenuComponent, typeof UserProfileComponent, typeof ActivateComponent, typeof LoginComponent, typeof ResetPasswordComponent, typeof CompanyEditorComponent, typeof CountryEditorComponent, typeof CurrencyEditorComponent, typeof ExchangeRateEditorComponent, typeof NewsEditorComponent, typeof PermissionEditorComponent, typeof RequestEditorComponent, typeof RequestResultsComponent, typeof RoleEditorComponent, typeof UserRoleComponent, typeof UserPermissionComponent, typeof UserAccountEditorComponent, typeof UserProfileAccountComponent, typeof CustomFieldOptionsEditorComponent, typeof CustomFieldGroupEditorComponent, typeof CustomFieldGroupItemEditorComponent, typeof CustomFieldGroupEntityEditorComponent, typeof CustomFieldEditorComponent, typeof ConfigComponent, typeof ResourceLanguageEditorComponent, typeof ResourceTranslationEditorComponent, typeof MetaEntityFieldEditorComponent, typeof FormEditorComponent, typeof SupplierEditorComponent, typeof TvaRateEditorComponent, typeof TvaRateDetailComponent, typeof ImageUploadComponent, typeof AddressEditorComponent, typeof DWSupplyComponent, typeof EntityFilesComponent, typeof ExchangeRateDetailComponent, typeof UserGroupEditorComponent, typeof UserCompanyComponent, typeof PresentationProfileEditorComponent, typeof PresentationProfileScreenComponent], [typeof i108.ModalModule, typeof i109.DragDropModule, typeof i110.CommonModule, typeof i111.AngularEditorModule, typeof i112.FormsModule, typeof i112.ReactiveFormsModule, typeof i113.CoreModelModule, typeof i114.CoreUxModule, typeof PresentationProfileComponent, typeof i116.CoreDataModule, typeof i117.SystemModelModule, typeof i118.SystemDataModule, typeof i119.SystemRootModule, typeof i120.NgSelectModule, typeof i121.RecaptchaModule, typeof i121.RecaptchaFormsModule, typeof i122.NgHttpLoaderComponent, typeof i123.NgxDropzoneModule, typeof i124.TreeviewModule, typeof i125.RouterModule], [typeof AddressComponent, typeof CompanyComponent, typeof CountryComponent, typeof CurrencyComponent, typeof CustomFieldComponent, typeof CustomFieldGroupComponent, typeof CustomFieldGroupEntityComponent, typeof CustomFieldGroupItemComponent, typeof CustomFieldOptionsComponent, typeof CustomFieldValueComponent, typeof DayInfoComponent, typeof ErrorCategoryComponent, typeof ExchangeRateComponent, typeof FilesComponent, typeof KeywordComponent, typeof MetaEntityComponent, typeof MetaEntityFieldComponent, typeof MetaEntityFormComponent, typeof MetaEntityFormFieldComponent, typeof MetaEntityFormSectionComponent, typeof MetaEntityKeywordComponent, typeof MetaEntityRelationComponent, typeof MetaEntityRelationDefinitionComponent, typeof MetaEntityTranslationComponent, typeof MetaEntityViewFieldComponent, typeof NewsComponent, typeof ParameterComponent, typeof ParameterSectionComponent, typeof ParameterValueComponent, typeof PermissionComponent, typeof PresentationProfileItemComponent, typeof RatingComponent, typeof RatingSummaryComponent, typeof RequestComponent, typeof RequestEntityComponent, typeof RequestResultComponent, typeof RequestTypeComponent, typeof ResourceKeyComponent, typeof ResourceLanguageComponent, typeof ResourceTranslationComponent, typeof RoleComponent, typeof RolePermissionComponent, typeof SubcompanyComponent, typeof SupplierComponent, typeof SupplierCompanyComponent, typeof SynchronizedCompanyComponent, typeof TvaRateComponent, typeof UserAccountComponent, typeof UserAccountCompanyComponent, typeof UserAccountLoginComponent, typeof UserAccountNewsComponent, typeof UserAccountRoleComponent, typeof UserAccountTokenComponent, typeof UserFavoriteComponent, typeof UserGroupComponent, typeof UserGroupDefinitionComponent, typeof UserHistoryComponent, typeof UserPermissionViewComponent, typeof UserSessionComponent, typeof VersionComponent, typeof AccessDeniedComponent, typeof DFlatLayoutComponent, typeof DFlatSpinnerComponent, typeof HistoryComponent, typeof HomepageComponent, typeof SearchComponent, typeof SearchResultComponent, typeof UserMenuComponent, typeof UserProfileComponent, typeof ActivateComponent, typeof LoginComponent, typeof ResetPasswordComponent, typeof CompanyEditorComponent, typeof CountryEditorComponent, typeof CurrencyEditorComponent, typeof ExchangeRateEditorComponent, typeof NewsEditorComponent, typeof PermissionEditorComponent, typeof RequestEditorComponent, typeof RequestResultsComponent, typeof RoleEditorComponent, typeof UserRoleComponent, typeof UserPermissionComponent, typeof UserAccountEditorComponent, typeof UserProfileAccountComponent, typeof CustomFieldOptionsEditorComponent, typeof CustomFieldGroupEditorComponent, typeof CustomFieldGroupItemEditorComponent, typeof CustomFieldGroupEntityEditorComponent, typeof CustomFieldEditorComponent, typeof ConfigComponent, typeof ResourceLanguageEditorComponent, typeof ResourceTranslationEditorComponent, typeof MetaEntityFieldEditorComponent, typeof FormEditorComponent, typeof SupplierEditorComponent, typeof TvaRateEditorComponent, typeof TvaRateDetailComponent, typeof ImageUploadComponent, typeof AddressEditorComponent, typeof DWSupplyComponent, typeof EntityFilesComponent, typeof ExchangeRateDetailComponent, typeof UserGroupEditorComponent, typeof UserCompanyComponent, typeof PresentationProfileEditorComponent, typeof PresentationProfileScreenComponent]>;
|
|
3206
3558
|
static ɵinj: i0.ɵɵInjectorDeclaration<SystemUxModule>;
|
|
3207
3559
|
}
|
|
3208
3560
|
export declare class RatesActionService {
|
|
@@ -3244,18 +3596,6 @@ export declare class SystemSelectorMapperService extends SelectorMapperServiceBa
|
|
|
3244
3596
|
static ɵfac: i0.ɵɵFactoryDeclaration<SystemSelectorMapperService, never>;
|
|
3245
3597
|
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
|
|
3246
3598
|
}
|
|
3247
|
-
export declare class PresentationProfileActionService {
|
|
3248
|
-
private readonly modalService;
|
|
3249
|
-
constructor(modalService: BsModalService);
|
|
3250
|
-
private readonly selectionSubject;
|
|
3251
|
-
private readonly cancelledSubject;
|
|
3252
|
-
readonly selectionConfirmed$: Observable<PpResult>;
|
|
3253
|
-
readonly selectionCancelled$: Observable<void>;
|
|
3254
|
-
open(config: PpConfig): void;
|
|
3255
|
-
splitForExport(columns: PpResult['columns']): PpExportSplit;
|
|
3256
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<PresentationProfileActionService, never>;
|
|
3257
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
|
|
3258
|
-
}
|
|
3259
3599
|
/** Global entry point for all Presentation Profile concerns. Bound to PP_SERVICE injection token. */
|
|
3260
3600
|
export declare class PpFacadeService implements IPpService {
|
|
3261
3601
|
private readonly resolver;
|
|
@@ -3329,7 +3669,7 @@ export declare class DflatAppModule {
|
|
|
3329
3669
|
*/
|
|
3330
3670
|
static forRoot(environment: EnvironmentBase): ModuleWithProviders<DflatAppModule>;
|
|
3331
3671
|
static ɵfac: i0.ɵɵFactoryDeclaration<DflatAppModule, never>;
|
|
3332
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<DflatAppModule, never, [typeof
|
|
3672
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<DflatAppModule, never, [typeof i112.FormsModule, typeof i112.ReactiveFormsModule, typeof i2.BrowserModule, typeof i3.BrowserAnimationsModule, typeof i121.RecaptchaModule, typeof i121.RecaptchaFormsModule, typeof i5.NgxDatatableModule, typeof i120.NgSelectModule, typeof i7.CoreModule, typeof i113.CoreModelModule, typeof i9.CoreServicesModule, typeof i116.CoreDataModule, typeof i114.CoreUxModule, typeof i119.SystemRootModule, typeof SystemUxModule, typeof i14.ToastrModule, typeof i15.AccordionModule], [typeof i112.FormsModule, typeof i112.ReactiveFormsModule, typeof i2.BrowserModule, typeof i3.BrowserAnimationsModule, typeof i121.RecaptchaModule, typeof i121.RecaptchaFormsModule, typeof i5.NgxDatatableModule, typeof i120.NgSelectModule, typeof i7.CoreModule, typeof i113.CoreModelModule, typeof i9.CoreServicesModule, typeof i116.CoreDataModule, typeof i114.CoreUxModule, typeof i119.SystemRootModule, typeof SystemUxModule]>;
|
|
3333
3673
|
static ɵinj: i0.ɵɵInjectorDeclaration<DflatAppModule>;
|
|
3334
3674
|
}
|
|
3335
3675
|
/**
|
|
@@ -3346,31 +3686,8 @@ export declare abstract class BaseEntityFilesComponent extends BaseComponent<Ent
|
|
|
3346
3686
|
static ɵfac: i0.ɵɵFactoryDeclaration<BaseEntityFilesComponent, never>;
|
|
3347
3687
|
static ɵdir: i0.ɵɵDirectiveDeclaration<BaseEntityFilesComponent, never, never, {}, {}, never, never, true, never>;
|
|
3348
3688
|
}
|
|
3349
|
-
/**
|
|
3350
|
-
* Recherche et édition des PresentationProfile (partie générée) : titre, lien, clé d'entité et
|
|
3351
|
-
* permission, onglets des entités liées. Composant spécifique : PresentationProfileComponent.
|
|
3352
|
-
*/
|
|
3353
|
-
export declare abstract class BasePresentationProfileComponent extends BaseComponent<PresentationProfileFilterViewModel, PresentationProfile> {
|
|
3354
|
-
protected route: ActivatedRoute;
|
|
3355
|
-
getTitle(): string;
|
|
3356
|
-
getPath(): string;
|
|
3357
|
-
getEntityKey(): string;
|
|
3358
|
-
get PermissionKey(): string;
|
|
3359
|
-
constructor(app: ApplicationService, route: ActivatedRoute);
|
|
3360
|
-
ngOnInit(): void;
|
|
3361
|
-
/**
|
|
3362
|
-
* Onglets des entités liées (relation 1..*) : sections du formulaire par défaut
|
|
3363
|
-
* (metadata/04-forms/PresentationProfileForm.sql), déclarées par SystemGeneratedSectionService
|
|
3364
|
-
* (system-sections.generated.ts) et demandées au registre du socle par la clé de l'entité :
|
|
3365
|
-
* ce composant n'importe aucun composant d'onglet. Un onglet de la même entité déjà enregistré
|
|
3366
|
-
* par le composant spécifique n'est pas dupliqué.
|
|
3367
|
-
*/
|
|
3368
|
-
protected registerFormSections(): void;
|
|
3369
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<BasePresentationProfileComponent, never>;
|
|
3370
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<BasePresentationProfileComponent, never, never, {}, {}, never, never, true, never>;
|
|
3371
|
-
}
|
|
3372
3689
|
/** Composants des entités du module System (composants spécifiques), à déclarer dans son module Angular. */
|
|
3373
|
-
export declare const SystemGeneratedComponents: (typeof
|
|
3690
|
+
export declare const SystemGeneratedComponents: (typeof TvaRateComponent | typeof ResourceKeyComponent | typeof MetaEntityComponent | typeof ExchangeRateComponent | typeof AddressComponent | typeof CompanyComponent | typeof CountryComponent | typeof CurrencyComponent | typeof CustomFieldComponent | typeof CustomFieldGroupComponent | typeof CustomFieldGroupEntityComponent | typeof CustomFieldGroupItemComponent | typeof CustomFieldOptionsComponent | typeof CustomFieldValueComponent | typeof DayInfoComponent | typeof ErrorCategoryComponent | typeof FilesComponent | typeof KeywordComponent | typeof MetaEntityFieldComponent | typeof MetaEntityFormComponent | typeof MetaEntityFormFieldComponent | typeof MetaEntityFormSectionComponent | typeof MetaEntityKeywordComponent | typeof MetaEntityRelationComponent | typeof MetaEntityRelationDefinitionComponent | typeof MetaEntityTranslationComponent | typeof MetaEntityViewFieldComponent | typeof NewsComponent | typeof ParameterComponent | typeof ParameterSectionComponent | typeof ParameterValueComponent | typeof PermissionComponent | typeof PresentationProfileItemComponent | typeof RatingComponent | typeof RatingSummaryComponent | typeof RequestComponent | typeof RequestEntityComponent | typeof RequestResultComponent | typeof RequestTypeComponent | typeof ResourceLanguageComponent | typeof ResourceTranslationComponent | typeof RoleComponent | typeof RolePermissionComponent | typeof SubcompanyComponent | typeof SupplierComponent | typeof SupplierCompanyComponent | typeof SynchronizedCompanyComponent | typeof UserAccountComponent | typeof UserAccountCompanyComponent | typeof UserAccountLoginComponent | typeof UserAccountNewsComponent | typeof UserAccountRoleComponent | typeof UserAccountTokenComponent | typeof UserFavoriteComponent | typeof UserGroupComponent | typeof UserGroupDefinitionComponent | typeof UserHistoryComponent | typeof UserPermissionViewComponent | typeof UserSessionComponent | typeof VersionComponent)[];
|
|
3374
3691
|
/** Routes des composants des entités du module System (clé d'entité), à ajouter à RouterModule.forChild. */
|
|
3375
3692
|
export declare const SystemGeneratedRoutes: Routes;
|
|
3376
3693
|
/**
|