@acorex/modules 20.7.16 → 20.7.17

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.
Files changed (32) hide show
  1. package/business-core/index.d.ts +39 -2
  2. package/contact-core/index.d.ts +1 -7
  3. package/customer-management/index.d.ts +1 -27
  4. package/data-management/index.d.ts +17 -4
  5. package/fesm2022/acorex-modules-business-core.mjs +316 -4
  6. package/fesm2022/acorex-modules-business-core.mjs.map +1 -1
  7. package/fesm2022/{acorex-modules-contact-core-emergency-service.entity-Cro3bM4G.mjs → acorex-modules-contact-core-emergency-service.entity-l8rYNqP1.mjs} +2 -1
  8. package/fesm2022/acorex-modules-contact-core-emergency-service.entity-l8rYNqP1.mjs.map +1 -0
  9. package/fesm2022/acorex-modules-contact-core.mjs +6 -47
  10. package/fesm2022/acorex-modules-contact-core.mjs.map +1 -1
  11. package/fesm2022/{acorex-modules-customer-management-customer.entity-CRp5g0OZ.mjs → acorex-modules-customer-management-customer.entity-B7-T9_T7.mjs} +9 -9
  12. package/fesm2022/acorex-modules-customer-management-customer.entity-B7-T9_T7.mjs.map +1 -0
  13. package/fesm2022/acorex-modules-customer-management.mjs +1 -111
  14. package/fesm2022/acorex-modules-customer-management.mjs.map +1 -1
  15. package/fesm2022/acorex-modules-data-management.mjs +56 -45
  16. package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
  17. package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-CviI9xJC.mjs → acorex-modules-human-capital-management-leave-request.entity-CS3Fr_k2.mjs} +2 -1
  18. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-CS3Fr_k2.mjs.map +1 -0
  19. package/fesm2022/acorex-modules-human-capital-management.mjs +1 -1
  20. package/fesm2022/acorex-modules-person-management.mjs +9 -19
  21. package/fesm2022/acorex-modules-person-management.mjs.map +1 -1
  22. package/fesm2022/acorex-modules-supplier-management.mjs +19 -229
  23. package/fesm2022/acorex-modules-supplier-management.mjs.map +1 -1
  24. package/package.json +6 -6
  25. package/supplier-management/index.d.ts +4 -50
  26. package/fesm2022/acorex-modules-contact-core-emergency-service.entity-Cro3bM4G.mjs.map +0 -1
  27. package/fesm2022/acorex-modules-customer-management-customer-segment.entity-CoYAU5g3.mjs +0 -69
  28. package/fesm2022/acorex-modules-customer-management-customer-segment.entity-CoYAU5g3.mjs.map +0 -1
  29. package/fesm2022/acorex-modules-customer-management-customer-type.entity-pt4gpOGq.mjs +0 -79
  30. package/fesm2022/acorex-modules-customer-management-customer-type.entity-pt4gpOGq.mjs.map +0 -1
  31. package/fesm2022/acorex-modules-customer-management-customer.entity-CRp5g0OZ.mjs.map +0 -1
  32. package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-CviI9xJC.mjs.map +0 -1
@@ -1,4 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
+ import { Injector } from '@angular/core';
2
3
  import { AXPEntityModel, AXPEntityDefinitionLoader } from '@acorex/platform/layout/entity';
3
4
  import { AXPEntity, AXPMenuProvider, AXPMenuProviderContext } from '@acorex/platform/common';
4
5
  import { AXPPermissionDefinitionProvider, AXPPermissionDefinitionProviderContext } from '@acorex/platform/auth';
@@ -44,6 +45,18 @@ declare const RootConfig: {
44
45
  titlePlural: string;
45
46
  icon: string;
46
47
  };
48
+ partyType: {
49
+ name: string;
50
+ title: string;
51
+ titlePlural: string;
52
+ icon: string;
53
+ };
54
+ partySegment: {
55
+ name: string;
56
+ title: string;
57
+ titlePlural: string;
58
+ icon: string;
59
+ };
47
60
  };
48
61
  };
49
62
 
@@ -88,6 +101,24 @@ interface AXMBusinessCoreBusinessStatusEntityModel {
88
101
  isDisabled?: boolean;
89
102
  }
90
103
 
104
+ interface AXMBusinessCorePartyTypeEntityModel extends AXPEntityModel<string> {
105
+ code: string;
106
+ title: string;
107
+ description?: string | null;
108
+ isDisabled?: boolean;
109
+ }
110
+
111
+ declare function partyTypeFactory(injector: Injector): Promise<AXPEntity>;
112
+
113
+ interface AXMBusinessCorePartySegmentEntityModel extends AXPEntityModel<string> {
114
+ title: string;
115
+ description?: string | null;
116
+ color?: string | null;
117
+ isArchived?: boolean;
118
+ }
119
+
120
+ declare function partySegmentFactory(injector: Injector): Promise<AXPEntity>;
121
+
91
122
  declare class AXMBusinessCoreEntityProvider implements AXPEntityDefinitionLoader {
92
123
  private readonly injector;
93
124
  get(moduleName: string, entityName: string): Promise<AXPEntity | null>;
@@ -121,8 +152,14 @@ declare const AXMBusinessCorePermissionKeys: {
121
152
  readonly BusinessStatus: {
122
153
  readonly Management: "BusinessCore:Permission:BusinessStatus.Management";
123
154
  };
155
+ readonly PartyType: {
156
+ readonly Management: "BusinessCore:Permission:PartyType.Management";
157
+ };
158
+ readonly PartySegment: {
159
+ readonly Management: "BusinessCore:Permission:PartySegment.Management";
160
+ };
124
161
  };
125
162
  };
126
163
 
127
- export { AXMBusinessCoreEntityProvider, AXMBusinessCoreMenuProvider, AXMBusinessCoreModule, AXMBusinessCorePermissionDefinitionProvider, AXMBusinessCorePermissionKeys, RootConfig };
128
- export type { AXMBusinessCoreBusinessStatusEntityModel, AXMBusinessCoreBusinessTypeEntityModel, AXMBusinessCoreIndustryEntityModel, AXMBusinessCoreManufacturerEntityModel };
164
+ export { AXMBusinessCoreEntityProvider, AXMBusinessCoreMenuProvider, AXMBusinessCoreModule, AXMBusinessCorePermissionDefinitionProvider, AXMBusinessCorePermissionKeys, RootConfig, partySegmentFactory, partyTypeFactory };
165
+ export type { AXMBusinessCoreBusinessStatusEntityModel, AXMBusinessCoreBusinessTypeEntityModel, AXMBusinessCoreIndustryEntityModel, AXMBusinessCoreManufacturerEntityModel, AXMBusinessCorePartySegmentEntityModel, AXMBusinessCorePartyTypeEntityModel };
@@ -3,15 +3,9 @@ import { AXPEntity, AXPMenuProvider, AXPMenuProviderContext } from '@acorex/plat
3
3
  import { AXPEntityDefinitionLoader } from '@acorex/platform/layout/entity';
4
4
  import { AXPPermissionDefinitionProvider, AXPPermissionDefinitionProviderContext } from '@acorex/platform/auth';
5
5
 
6
- declare class AXPContactCoreEmergencyServiceEntityModule {
7
- static ɵfac: i0.ɵɵFactoryDeclaration<AXPContactCoreEmergencyServiceEntityModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPContactCoreEmergencyServiceEntityModule, never, never, never>;
9
- static ɵinj: i0.ɵɵInjectorDeclaration<AXPContactCoreEmergencyServiceEntityModule>;
10
- }
11
-
12
6
  declare class AXPContactCoreModule {
13
7
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPContactCoreModule, never>;
14
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPContactCoreModule, never, [typeof AXPContactCoreEmergencyServiceEntityModule], never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXPContactCoreModule, never, never, never>;
15
9
  static ɵinj: i0.ɵɵInjectorDeclaration<AXPContactCoreModule>;
16
10
  }
17
11
 
@@ -19,20 +19,6 @@ declare const RootConfig: {
19
19
  titlePlural: string;
20
20
  icon: string;
21
21
  };
22
- customerType: {
23
- name: string;
24
- source: string;
25
- title: string;
26
- titlePlural: string;
27
- icon: string;
28
- };
29
- customerSegment: {
30
- name: string;
31
- source: string;
32
- title: string;
33
- titlePlural: string;
34
- icon: string;
35
- };
36
22
  lead: {
37
23
  name: string;
38
24
  source: string;
@@ -98,18 +84,6 @@ declare class AXMCustomerManagementCustomerEntityModule {
98
84
  static ɵinj: i0.ɵɵInjectorDeclaration<AXMCustomerManagementCustomerEntityModule>;
99
85
  }
100
86
 
101
- declare class AXMCustomerManagementCustomerTypeEntityModule {
102
- static ɵfac: i0.ɵɵFactoryDeclaration<AXMCustomerManagementCustomerTypeEntityModule, never>;
103
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXMCustomerManagementCustomerTypeEntityModule, never, never, never>;
104
- static ɵinj: i0.ɵɵInjectorDeclaration<AXMCustomerManagementCustomerTypeEntityModule>;
105
- }
106
-
107
- declare class AXMCustomerManagementCustomerSegmentEntityModule {
108
- static ɵfac: i0.ɵɵFactoryDeclaration<AXMCustomerManagementCustomerSegmentEntityModule, never>;
109
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXMCustomerManagementCustomerSegmentEntityModule, never, never, never>;
110
- static ɵinj: i0.ɵɵInjectorDeclaration<AXMCustomerManagementCustomerSegmentEntityModule>;
111
- }
112
-
113
87
  declare class AXMCustomerManagementLeadEntityModule {
114
88
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMCustomerManagementLeadEntityModule, never>;
115
89
  static ɵmod: i0.ɵɵNgModuleDeclaration<AXMCustomerManagementLeadEntityModule, never, never, never>;
@@ -160,7 +134,7 @@ declare class AXMCustomerManagementDealContactRoleEntityModule {
160
134
 
161
135
  declare class AXMCustomerManagementModule {
162
136
  static ɵfac: i0.ɵɵFactoryDeclaration<AXMCustomerManagementModule, never>;
163
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXMCustomerManagementModule, never, [typeof AXMCustomerManagementCustomerEntityModule, typeof AXMCustomerManagementCustomerTypeEntityModule, typeof AXMCustomerManagementCustomerSegmentEntityModule, typeof AXMCustomerManagementLeadEntityModule, typeof AXMCustomerManagementOpportunityStageEntityModule, typeof AXMCustomerManagementSalesPipelineEntityModule, typeof AXMCustomerManagementLifecycleStageEntityModule, typeof AXMCustomerManagementSalesTerritoryEntityModule, typeof AXMCustomerManagementOpportunityEntityModule, typeof AXMCustomerManagementActivityEntityModule, typeof AXMCustomerManagementDealContactRoleEntityModule], never>;
137
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXMCustomerManagementModule, never, [typeof AXMCustomerManagementCustomerEntityModule, typeof AXMCustomerManagementLeadEntityModule, typeof AXMCustomerManagementOpportunityStageEntityModule, typeof AXMCustomerManagementSalesPipelineEntityModule, typeof AXMCustomerManagementLifecycleStageEntityModule, typeof AXMCustomerManagementSalesTerritoryEntityModule, typeof AXMCustomerManagementOpportunityEntityModule, typeof AXMCustomerManagementActivityEntityModule, typeof AXMCustomerManagementDealContactRoleEntityModule], never>;
164
138
  static ɵinj: i0.ɵɵInjectorDeclaration<AXMCustomerManagementModule>;
165
139
  }
166
140
 
@@ -9,7 +9,7 @@ import { AXPFilterDefinition, AXPDataSourceDefinition, AXPFilterClause, AXPDataS
9
9
  import { AXDataSource, AXDataSourceOperator, AXFilterLogic } from '@acorex/cdk/common';
10
10
  import { AXDropListDroppedEvent } from '@acorex/cdk/drag-drop';
11
11
  import * as _acorex_modules_data_management from '@acorex/modules/data-management';
12
- import { AXPDynamicFormDefinition, AXPLayoutRendererComponent, AXPLayoutBuilderService } from '@acorex/platform/layout/builder';
12
+ import { AXPDynamicFormGroupDefinition, AXPDynamicFormDefinition, AXPLayoutRendererComponent, AXPLayoutBuilderService } from '@acorex/platform/layout/builder';
13
13
  import { AXTranslationService } from '@acorex/core/translation';
14
14
  import { AXPCommand } from '@acorex/platform/runtime';
15
15
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
@@ -1810,7 +1810,7 @@ declare class AXPMetaDataFormWidgetEditComponent extends AXPValueWidgetComponent
1810
1810
  /**
1811
1811
  * Groups structure from meta-data-selector or evaluated expression
1812
1812
  */
1813
- groups: _angular_core.Signal<any[]>;
1813
+ groups: _angular_core.Signal<AXPDynamicFormGroupDefinition[]>;
1814
1814
  /**
1815
1815
  * Check if there are any valid metadata definitions available
1816
1816
  */
@@ -1888,6 +1888,12 @@ interface ShowMetaDataFormPopupInput {
1888
1888
  title?: string;
1889
1889
  path: string;
1890
1890
  }
1891
+ /** Result of resolveGroups; dialogTitle is optional fallback when input.title is not set. */
1892
+ interface ResolveGroupsResult {
1893
+ /** Expression string (evaluated at runtime) or groups array */
1894
+ groups: string | AXPDynamicFormGroupDefinition[];
1895
+ dialogTitle?: string;
1896
+ }
1891
1897
  declare class ShowMetaDataFormPopupCommand implements AXPCommand<ShowMetaDataFormPopupInput, any> {
1892
1898
  protected readonly layoutBuilder: AXPLayoutBuilderService;
1893
1899
  protected readonly translationService: AXTranslationService;
@@ -1896,8 +1902,15 @@ declare class ShowMetaDataFormPopupCommand implements AXPCommand<ShowMetaDataFor
1896
1902
  execute(input: ShowMetaDataFormPopupInput | any): Promise<AXPExecuteCommandResult<any>>;
1897
1903
  /**
1898
1904
  * Loads a record by entity and id. Override to use custom data sources or key handling.
1905
+ * @param input - Optional; overrides can use input.data or other fields to return custom record.
1899
1906
  */
1900
- protected findRecord(entity: string, id: string): Promise<Record<string, unknown> | null>;
1907
+ protected findRecord(entity: string, id: string, input?: ShowMetaDataFormPopupInput): Promise<Record<string, unknown> | null>;
1908
+ /**
1909
+ * Resolves groups for the meta-data-form-editor.
1910
+ * Override to load groups from custom APIs instead of entity metadata.
1911
+ * @returns Expression string (evaluated at runtime) or groups array; dialogTitle is optional fallback.
1912
+ */
1913
+ protected resolveGroups(input: ShowMetaDataFormPopupInput, currentRecord: Record<string, unknown>): Promise<ResolveGroupsResult>;
1901
1914
  /**
1902
1915
  * Persists meta-data form changes. Override to use custom persistence or validation.
1903
1916
  */
@@ -2268,4 +2281,4 @@ declare const AXMPermissionsKeys: {
2268
2281
  };
2269
2282
 
2270
2283
  export { AXMColumnFilterSelectorWidget, AXMColumnFilterSelectorWidgetColumnComponent, AXMColumnFilterSelectorWidgetEditComponent, AXMColumnFilterSelectorWidgetFilterComponent, AXMColumnFilterSelectorWidgetPrintComponent, AXMColumnFilterSelectorWidgetViewComponent, AXMDataManagementFeatureKeys, AXMDataManagementModule, AXMDataSourceEntityModule, AXMDataSourceOutputType, AXMDataSourceService, AXMDataSourceServiceImpl, AXMDataSourceType, AXMDefaultAggregateFunctionProvider, AXMDefaultDatabaseTypeProvider, AXMEntityProvider, AXMMenuProvider, AXMMetaDataDefinitionEntityModule, AXMMetaDataDefinitionService, AXMMetaDataFeatureModule, AXMMetadataEvaluatorScopeProvider, AXMPMetaDataDefinitionServiceImpl, AXMPermissionsKeys, AXMQueryEntityModule, AXMQueryService, AXMQueryServiceImpl, AXMTagEntityModule, AXMTagEntityService, AXMTagsFeatureModule, AXM_COLUMN_DEF_WIDGET, AXM_FILTER_DEF_WIDGET, AXPAggregateBuilderComponent, AXPAggregateFunctionService, AXPAggregateFunctionsRegistry, AXPColumnsBuilderComponent, AXPDataManagementMenuKeys, AXPDatabaseTypeService, AXPGroupByBuilderComponent, AXPMetaDataFormWidget, AXPMetaDataFormWidgetEditComponent, AXPMetaDataSelectorWidget, AXPMetaDataSelectorWidgetEditComponent, AXPMetaDataSelectorWidgetViewComponent, AXPQueryBuilderComponent, AXPQueryBuilderWidget, AXPQueryBuilderWidgetColumnComponent, AXPQueryBuilderWidgetDesignerComponent, AXPQueryBuilderWidgetEditComponent, AXPQueryBuilderWidgetViewComponent, AXPRawQueryBuilderComponent, AXPSortBuilderComponent, AXPSystemTagProvider, AXPWhereBuilderComponent, AXP_AGGREGATE_FUNCTION_PROVIDER, AXP_DATABASE_TYPE_PROVIDER, AXP_DEFAULT_AGGREGATE_FUNCTION_PROVIDER, AXP_DEFAULT_DATABASE_TYPE_PROVIDER, META_DATA_FORM_FIELD, META_DATA_SELECTOR_FIELD, RootConfig, ShowMetaDataFormPopupCommand, ShowMetaDataSelectorPopupCommand, convertStateToValue, convertValueToState, createDefaultGroup, dataSourceEntityFactory, equipmentFactory, factory, metaDataDefinitionFactory, metaDataSelectorPlugin, queryFactory, tagsPlugin };
2271
- export type { AXMColumnFilterSelectorWidgetConfigType, AXMDataManagementEquipmentEntityModel, AXMDataManagementQueryEntityModel, AXMDataSourceEntityModel, AXMDataSourceFilter, AXMDataSourceOutputTypeOption, AXMDataSourceTypeOption, AXMMetaDataDefinitionEntityModel, AXMMetaDataSelectorField, AXMMetaDataSelectorGroup, AXMMetaDataSelectorState, AXMMetaDataSelectorValue, AXMQueryEntityModel, AXMTag, AXPAggregateCategory, AXPAggregateFunctionDefinition, AXPAggregateFunctionProvider, AXPAggregateFunctionProviderToken, AXPAggregateOperation, AXPDatabaseType, AXPDatabaseTypeDefinition, AXPDatabaseTypeProvider, AXPDatabaseTypeProviderToken, AXPMetaDataFormWidgetConfigType, AXPMetaDataSelectorWidgetConfigType, AXPQueryBuilderData, AXPQueryBuilderWidgetConfigType, AXPQueryExecutionResult, AXPQueryOutputType, AXPQuerySortRule, AXPTagPluginOptions, ColumnFilterValue, MetaDataSelectorDisplay, MetaDataSelectorDisplayConfig, MetaDataSelectorPluginOptions, MetaDataSelectorPopupConfig, MetaDataSelectorSectionConfig, ShowMetaDataFormPopupInput, ShowMetaDataSelectorPopupInput };
2284
+ export type { AXMColumnFilterSelectorWidgetConfigType, AXMDataManagementEquipmentEntityModel, AXMDataManagementQueryEntityModel, AXMDataSourceEntityModel, AXMDataSourceFilter, AXMDataSourceOutputTypeOption, AXMDataSourceTypeOption, AXMMetaDataDefinitionEntityModel, AXMMetaDataSelectorField, AXMMetaDataSelectorGroup, AXMMetaDataSelectorState, AXMMetaDataSelectorValue, AXMQueryEntityModel, AXMTag, AXPAggregateCategory, AXPAggregateFunctionDefinition, AXPAggregateFunctionProvider, AXPAggregateFunctionProviderToken, AXPAggregateOperation, AXPDatabaseType, AXPDatabaseTypeDefinition, AXPDatabaseTypeProvider, AXPDatabaseTypeProviderToken, AXPMetaDataFormWidgetConfigType, AXPMetaDataSelectorWidgetConfigType, AXPQueryBuilderData, AXPQueryBuilderWidgetConfigType, AXPQueryExecutionResult, AXPQueryOutputType, AXPQuerySortRule, AXPTagPluginOptions, ColumnFilterValue, MetaDataSelectorDisplay, MetaDataSelectorDisplayConfig, MetaDataSelectorPluginOptions, MetaDataSelectorPopupConfig, MetaDataSelectorSectionConfig, ResolveGroupsResult, ShowMetaDataFormPopupInput, ShowMetaDataSelectorPopupInput };
@@ -1,10 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { NgModule, inject, Injector } from '@angular/core';
3
3
  import { AXP_MODULE_MANIFEST_PROVIDER, provideLazyProvider } from '@acorex/platform/core';
4
- import { AXP_ENTITY_DEFINITION_LOADER, AXPEntityService } from '@acorex/platform/layout/entity';
5
- import { AXP_MENU_PROVIDER } from '@acorex/platform/common';
4
+ import { AXP_ENTITY_DEFINITION_LOADER, entityMasterCrudActions, entityMasterRecordActions, AXPEntityService } from '@acorex/platform/layout/entity';
5
+ import { AXP_MENU_PROVIDER, createAllQueryView } from '@acorex/platform/common';
6
6
  import { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';
7
- import { AXPCommonMenuKeys } from '@acorex/modules/common';
7
+ import { AXPWidgetsList, AXPCommonMenuKeys } from '@acorex/modules/common';
8
8
  import { AXTranslationService } from '@acorex/core/translation';
9
9
 
10
10
  const config = {
@@ -43,6 +43,18 @@ const RootConfig = {
43
43
  titlePlural: `@${config.i18n}:business-statuses.entities.business-status.plural`,
44
44
  icon: 'fa-light fa-circle-check',
45
45
  },
46
+ partyType: {
47
+ name: 'PartyType',
48
+ title: `@${config.i18n}:party-types.entities.party-type.title`,
49
+ titlePlural: `@${config.i18n}:party-types.entities.party-type.plural`,
50
+ icon: 'fa-light fa-tag',
51
+ },
52
+ partySegment: {
53
+ name: 'PartySegment',
54
+ title: `@${config.i18n}:party-segments.entities.party-segment.title`,
55
+ titlePlural: `@${config.i18n}:party-segments.entities.party-segment.plural`,
56
+ icon: 'fa-light fa-chart-pie',
57
+ },
46
58
  },
47
59
  };
48
60
 
@@ -110,6 +122,261 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
110
122
  //#region ---- Business Status Model ----
111
123
  //#endregion
112
124
 
125
+ //#region ---- Party Type Model ----
126
+ //#endregion
127
+
128
+ //#region ---- Imports ----
129
+ //#endregion
130
+ //#region ---- Entity Factory ----
131
+ async function partyTypeFactory(injector) {
132
+ const sections = [{ id: 'basic-info', layout: { positions: { lg: { colSpan: 12 } } } }];
133
+ const propertyLayouts = [
134
+ { name: 'code', layout: { positions: { lg: { colSpan: 4, order: 1 } } } },
135
+ { name: 'title', layout: { positions: { lg: { colSpan: 8, order: 2 } } } },
136
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 3 } } } },
137
+ ];
138
+ const entityDef = {
139
+ module: RootConfig.module.name,
140
+ name: RootConfig.entities.partyType.name,
141
+ title: RootConfig.entities.partyType.title,
142
+ icon: RootConfig.entities.partyType.icon,
143
+ formats: {
144
+ individual: RootConfig.entities.partyType.title,
145
+ plural: RootConfig.entities.partyType.titlePlural,
146
+ searchResult: {
147
+ title: '{{ title }}',
148
+ description: '{{ code }}',
149
+ },
150
+ },
151
+ plugins: [{ name: 'history' }, { name: 'compare' }, { name: 'clone' }, { name: 'disable' }],
152
+ groups: [{ id: 'basic-info', title: '@business-core:party-types.entities.party-type.groups.basic-info' }],
153
+ properties: [
154
+ {
155
+ name: 'id',
156
+ title: '@general:terms.common.id',
157
+ groupId: 'basic-info',
158
+ schema: {
159
+ dataType: 'uuid',
160
+ visible: false,
161
+ readonly: true,
162
+ unique: { enabled: true },
163
+ },
164
+ },
165
+ {
166
+ name: 'code',
167
+ title: '@general:terms.common.code',
168
+ groupId: 'basic-info',
169
+ options: {
170
+ sort: { enabled: true },
171
+ filter: { advance: { enabled: true }, inline: { enabled: true } },
172
+ },
173
+ schema: {
174
+ dataType: 'string',
175
+ interface: {
176
+ type: AXPWidgetsList.Editors.TextBox,
177
+ options: {
178
+ placeholder: '@business-core:party-types.entities.party-type.fields.code.placeholder',
179
+ },
180
+ },
181
+ },
182
+ validations: [{ rule: 'required' }],
183
+ },
184
+ {
185
+ name: 'title',
186
+ title: '@general:terms.common.title',
187
+ groupId: 'basic-info',
188
+ options: {
189
+ sort: { enabled: true },
190
+ filter: { advance: { enabled: true }, inline: { enabled: true } },
191
+ },
192
+ schema: {
193
+ dataType: 'string',
194
+ interface: {
195
+ type: AXPWidgetsList.Editors.TextBox,
196
+ options: {
197
+ placeholder: '@business-core:party-types.entities.party-type.fields.title.placeholder',
198
+ },
199
+ },
200
+ },
201
+ validations: [{ rule: 'required' }],
202
+ },
203
+ {
204
+ name: 'description',
205
+ title: '@general:terms.common.description',
206
+ groupId: 'basic-info',
207
+ schema: {
208
+ dataType: 'string',
209
+ interface: {
210
+ type: AXPWidgetsList.Editors.LargeTextBox,
211
+ options: {
212
+ rows: 3,
213
+ placeholder: '@business-core:party-types.entities.party-type.fields.description.placeholder',
214
+ },
215
+ },
216
+ },
217
+ },
218
+ ],
219
+ columns: [
220
+ { name: 'code', options: { width: '120px', order: 1 } },
221
+ { name: 'title', options: { width: '220px', order: 2 } },
222
+ ],
223
+ interfaces: {
224
+ master: {
225
+ create: {
226
+ sections,
227
+ properties: propertyLayouts,
228
+ },
229
+ update: {
230
+ sections,
231
+ properties: propertyLayouts,
232
+ },
233
+ single: {
234
+ title: '{{ title }}',
235
+ sections,
236
+ properties: propertyLayouts,
237
+ actions: [...entityMasterRecordActions()],
238
+ },
239
+ list: {
240
+ actions: [...entityMasterCrudActions()],
241
+ views: [
242
+ createAllQueryView({
243
+ sorts: [{ name: 'code', dir: 'asc' }],
244
+ }),
245
+ ],
246
+ },
247
+ },
248
+ },
249
+ };
250
+ return entityDef;
251
+ }
252
+ //#endregion
253
+
254
+ var partyType_entity = /*#__PURE__*/Object.freeze({
255
+ __proto__: null,
256
+ partyTypeFactory: partyTypeFactory
257
+ });
258
+
259
+ //#region ---- Party Segment Model ----
260
+ //#endregion
261
+
262
+ //#region ---- Imports ----
263
+ //#endregion
264
+ //#region ---- Entity Factory ----
265
+ async function partySegmentFactory(injector) {
266
+ const sections = [
267
+ { id: 'basic-info', layout: { positions: { lg: { colSpan: 12 } } } },
268
+ { id: 'appearance', layout: { positions: { lg: { colSpan: 12 } } } },
269
+ ];
270
+ const propertyLayouts = [
271
+ { name: 'title', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },
272
+ { name: 'description', layout: { positions: { lg: { colSpan: 12, order: 2 } } } },
273
+ { name: 'color', layout: { positions: { lg: { colSpan: 6, order: 3 } } } },
274
+ ];
275
+ const entityDef = {
276
+ module: RootConfig.module.name,
277
+ name: RootConfig.entities.partySegment.name,
278
+ title: RootConfig.entities.partySegment.title,
279
+ icon: RootConfig.entities.partySegment.icon,
280
+ formats: {
281
+ individual: RootConfig.entities.partySegment.title,
282
+ plural: RootConfig.entities.partySegment.titlePlural,
283
+ searchResult: {
284
+ title: '{{ title }}',
285
+ description: RootConfig.module.title,
286
+ },
287
+ },
288
+ plugins: [{ name: 'color' }, { name: 'archive' }],
289
+ groups: [
290
+ { id: 'basic-info', title: '@business-core:party-segments.entities.party-segment.groups.basic-info' },
291
+ { id: 'appearance', title: '@general:terms.interface.appearance' },
292
+ ],
293
+ properties: [
294
+ {
295
+ name: 'id',
296
+ title: '@general:terms.common.id',
297
+ groupId: 'basic-info',
298
+ schema: {
299
+ dataType: 'uuid',
300
+ visible: false,
301
+ readonly: true,
302
+ unique: { enabled: true },
303
+ },
304
+ },
305
+ {
306
+ name: 'title',
307
+ title: '@general:terms.common.title',
308
+ groupId: 'basic-info',
309
+ options: {
310
+ sort: { enabled: true },
311
+ filter: { advance: { enabled: true }, inline: { enabled: true } },
312
+ },
313
+ schema: {
314
+ dataType: 'string',
315
+ interface: {
316
+ type: AXPWidgetsList.Editors.TextBox,
317
+ options: {
318
+ placeholder: '@business-core:party-segments.entities.party-segment.fields.title.placeholder',
319
+ },
320
+ },
321
+ },
322
+ validations: [{ rule: 'required' }],
323
+ },
324
+ {
325
+ name: 'description',
326
+ title: '@general:terms.common.description',
327
+ groupId: 'basic-info',
328
+ schema: {
329
+ dataType: 'string',
330
+ interface: {
331
+ type: AXPWidgetsList.Editors.LargeTextBox,
332
+ options: {
333
+ rows: 3,
334
+ placeholder: '@business-core:party-segments.entities.party-segment.fields.description.placeholder',
335
+ },
336
+ },
337
+ },
338
+ },
339
+ ],
340
+ columns: [
341
+ { name: 'title', options: { width: '200px', order: 1 } },
342
+ { name: 'description', options: { width: '280px', order: 2 } },
343
+ ],
344
+ interfaces: {
345
+ master: {
346
+ create: {
347
+ sections,
348
+ properties: propertyLayouts,
349
+ },
350
+ update: {
351
+ sections,
352
+ properties: propertyLayouts,
353
+ },
354
+ single: {
355
+ title: '{{ title }}',
356
+ sections,
357
+ properties: propertyLayouts,
358
+ actions: [...entityMasterRecordActions()],
359
+ },
360
+ list: {
361
+ actions: [...entityMasterCrudActions()],
362
+ views: [
363
+ createAllQueryView({
364
+ sorts: [{ name: 'title', dir: 'asc' }],
365
+ }),
366
+ ],
367
+ },
368
+ },
369
+ },
370
+ };
371
+ return entityDef;
372
+ }
373
+ //#endregion
374
+
375
+ var partySegment_entity = /*#__PURE__*/Object.freeze({
376
+ __proto__: null,
377
+ partySegmentFactory: partySegmentFactory
378
+ });
379
+
113
380
  // Entity Types
114
381
 
115
382
  //#region ---- Imports ----
@@ -132,6 +399,10 @@ class AXMBusinessCoreEntityProvider {
132
399
  return (await import('./acorex-modules-business-core-business-type.entity-DEy8LvEV.mjs')).businessTypeFactory(this.injector);
133
400
  case RootConfig.entities.businessStatus.name:
134
401
  return (await import('./acorex-modules-business-core-business-status.entity-BYUneIcN.mjs')).businessStatusFactory(this.injector);
402
+ case RootConfig.entities.partyType.name:
403
+ return (await Promise.resolve().then(function () { return partyType_entity; })).partyTypeFactory(this.injector);
404
+ case RootConfig.entities.partySegment.name:
405
+ return (await Promise.resolve().then(function () { return partySegment_entity; })).partySegmentFactory(this.injector);
135
406
  }
136
407
  return null;
137
408
  }
@@ -154,6 +425,9 @@ const AXMBusinessCoreMenuKeys = {
154
425
  Industries: 'business-core.industries',
155
426
  BusinessTypes: 'business-core.business-types',
156
427
  BusinessStatuses: 'business-core.business-statuses',
428
+ Divider2: 'business-core.divider-2',
429
+ PartyTypes: 'business-core.party-types',
430
+ PartySegments: 'business-core.party-segments',
157
431
  };
158
432
 
159
433
  const AXMBusinessCorePermissionKeys = {
@@ -170,6 +444,12 @@ const AXMBusinessCorePermissionKeys = {
170
444
  BusinessStatus: {
171
445
  Management: 'BusinessCore:Permission:BusinessStatus.Management',
172
446
  },
447
+ PartyType: {
448
+ Management: 'BusinessCore:Permission:PartyType.Management',
449
+ },
450
+ PartySegment: {
451
+ Management: 'BusinessCore:Permission:PartySegment.Management',
452
+ },
173
453
  },
174
454
  };
175
455
 
@@ -238,6 +518,32 @@ class AXMBusinessCoreMenuProvider {
238
518
  permissions: [AXMBusinessCorePermissionKeys.BusinessCore.BusinessStatus.Management],
239
519
  },
240
520
  },
521
+ {
522
+ name: AXMBusinessCoreMenuKeys.Divider2,
523
+ text: '',
524
+ type: 'break',
525
+ priority: 6,
526
+ },
527
+ {
528
+ name: AXMBusinessCoreMenuKeys.PartyTypes,
529
+ text: RootConfig.entities.partyType.titlePlural,
530
+ icon: RootConfig.entities.partyType.icon,
531
+ priority: 7,
532
+ path: this.entityService.withEntity(module.name, RootConfig.entities.partyType.name).createPath(),
533
+ policy: {
534
+ permissions: [AXMBusinessCorePermissionKeys.BusinessCore.PartyType.Management],
535
+ },
536
+ },
537
+ {
538
+ name: AXMBusinessCoreMenuKeys.PartySegments,
539
+ text: RootConfig.entities.partySegment.titlePlural,
540
+ icon: RootConfig.entities.partySegment.icon,
541
+ priority: 8,
542
+ path: this.entityService.withEntity(module.name, RootConfig.entities.partySegment.name).createPath(),
543
+ policy: {
544
+ permissions: [AXMBusinessCorePermissionKeys.BusinessCore.PartySegment.Management],
545
+ },
546
+ },
241
547
  ],
242
548
  },
243
549
  ]);
@@ -264,6 +570,8 @@ class AXMBusinessCorePermissionDefinitionProvider {
264
570
  const industryTrans = (action) => this.translationService.translateAsync(`@business-core:industries.permissions.industry.${action}.title`);
265
571
  const businessTypeTrans = (action) => this.translationService.translateAsync(`@business-core:business-types.permissions.business-type.${action}.title`);
266
572
  const businessStatusTrans = (action) => this.translationService.translateAsync(`@business-core:business-statuses.permissions.business-status.${action}.title`);
573
+ const partyTypeTrans = (action) => this.translationService.translateAsync(`@business-core:party-types.permissions.party-type.${action}.title`);
574
+ const partySegmentTrans = (action) => this.translationService.translateAsync(`@business-core:party-segments.permissions.party-segment.${action}.title`);
267
575
  context
268
576
  .addGroup(RootConfig.module.name, moduleTitle)
269
577
  .addPermission(keys.Manufacturer.Management, await manufacturerTrans('manage'))
@@ -274,6 +582,10 @@ class AXMBusinessCorePermissionDefinitionProvider {
274
582
  .endPermission()
275
583
  .addPermission(keys.BusinessStatus.Management, await businessStatusTrans('manage'))
276
584
  .endPermission()
585
+ .addPermission(keys.PartyType.Management, await partyTypeTrans('manage'))
586
+ .endPermission()
587
+ .addPermission(keys.PartySegment.Management, await partySegmentTrans('manage'))
588
+ .endPermission()
277
589
  .endGroup();
278
590
  }
279
591
  }
@@ -290,5 +602,5 @@ var permissionDefinition_provider = /*#__PURE__*/Object.freeze({
290
602
  * Generated bundle index. Do not edit.
291
603
  */
292
604
 
293
- export { AXMBusinessCoreEntityProvider, AXMBusinessCoreMenuProvider, AXMBusinessCoreModule, AXMBusinessCorePermissionDefinitionProvider, AXMBusinessCorePermissionKeys, RootConfig };
605
+ export { AXMBusinessCoreEntityProvider, AXMBusinessCoreMenuProvider, AXMBusinessCoreModule, AXMBusinessCorePermissionDefinitionProvider, AXMBusinessCorePermissionKeys, RootConfig, partySegmentFactory, partyTypeFactory };
294
606
  //# sourceMappingURL=acorex-modules-business-core.mjs.map