@acorex-platform/module-financial-core-client 0.0.21

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.
@@ -0,0 +1,170 @@
1
+ const AXMFinancialCoreFeatureKeys = {
2
+ Currencies: 'FinancialCore:Feature:Currencies',
3
+ ExchangeRates: 'FinancialCore:Feature:ExchangeRates',
4
+ Taxation: 'FinancialCore:Feature:Taxation',
5
+ Payments: 'FinancialCore:Feature:Payments',
6
+ FiscalCalendars: 'FinancialCore:Feature:FiscalCalendars',
7
+ FinancialDimensions: 'FinancialCore:Feature:FinancialDimensions',
8
+ };
9
+
10
+ const AXMFinancialCoreMenuKeys = {
11
+ Root: 'financial-core',
12
+ Currencies: 'financial-core.currencies',
13
+ ExchangeRates: 'financial-core.exchange-rates',
14
+ Divider1: 'financial-core.divider-1',
15
+ TaxClasses: 'financial-core.tax-classes',
16
+ TaxRegions: 'financial-core.tax-regions',
17
+ TaxRules: 'financial-core.tax-rules',
18
+ Divider2: 'financial-core.divider-2',
19
+ PaymentTerms: 'financial-core.payment-terms',
20
+ PaymentMethods: 'financial-core.payment-methods',
21
+ Divider3: 'financial-core.divider-3',
22
+ FiscalCalendars: 'financial-core.fiscal-calendars',
23
+ Divider4: 'financial-core.divider-4',
24
+ FinancialDimensions: 'financial-core.financial-dimensions',
25
+ };
26
+
27
+ /**
28
+ * Finance capabilities used by this module.
29
+ * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).
30
+ */
31
+ const AXPFinancePermissionKeys = {
32
+ Access: 'Finance:Permission:Access',
33
+ MaintainFinance: 'Finance:Permission:MaintainFinance',
34
+ Setup: 'Finance:Permission:Setup',
35
+ };
36
+ /**
37
+ * @deprecated Prefer {@link AXPFinancePermissionKeys}.
38
+ * Legacy nested shape kept so existing imports compile during migration.
39
+ */
40
+ const AXMFinancialCorePermissionKeys = {
41
+ FinancialCore: {
42
+ Currency: {
43
+ Management: AXPFinancePermissionKeys.MaintainFinance,
44
+ },
45
+ ExchangeRate: {
46
+ Management: AXPFinancePermissionKeys.MaintainFinance,
47
+ },
48
+ TaxClass: {
49
+ Management: AXPFinancePermissionKeys.MaintainFinance,
50
+ },
51
+ TaxRegion: {
52
+ Management: AXPFinancePermissionKeys.MaintainFinance,
53
+ },
54
+ TaxRule: {
55
+ Management: AXPFinancePermissionKeys.MaintainFinance,
56
+ },
57
+ PaymentTerm: {
58
+ Management: AXPFinancePermissionKeys.MaintainFinance,
59
+ },
60
+ PaymentMethod: {
61
+ Management: AXPFinancePermissionKeys.MaintainFinance,
62
+ },
63
+ FiscalCalendar: {
64
+ Management: AXPFinancePermissionKeys.Setup,
65
+ View: AXPFinancePermissionKeys.Setup,
66
+ Create: AXPFinancePermissionKeys.Setup,
67
+ Update: AXPFinancePermissionKeys.Setup,
68
+ Delete: AXPFinancePermissionKeys.Setup,
69
+ },
70
+ FinancialDimension: {
71
+ Management: AXPFinancePermissionKeys.MaintainFinance,
72
+ },
73
+ },
74
+ };
75
+
76
+ const config = {
77
+ i18n: 'financial-core',
78
+ module: 'FinancialCore',
79
+ };
80
+ const RootConfig = {
81
+ config,
82
+ module: {
83
+ name: config.module,
84
+ title: `@${config.i18n}:module.title`,
85
+ icon: 'fa-light fa-sack-dollar',
86
+ },
87
+ entities: {
88
+ currency: {
89
+ name: 'Currency',
90
+ title: `@${config.i18n}:currencies.entities.currency.title`,
91
+ titlePlural: `@${config.i18n}:currencies.entities.currency.plural`,
92
+ icon: 'fa-light fa-coins',
93
+ },
94
+ exchangeRate: {
95
+ name: 'ExchangeRate',
96
+ title: `@${config.i18n}:exchange-rates.entities.exchange-rate.title`,
97
+ titlePlural: `@${config.i18n}:exchange-rates.entities.exchange-rate.plural`,
98
+ icon: 'fa-light fa-arrows-rotate',
99
+ },
100
+ taxClass: {
101
+ name: 'TaxClass',
102
+ title: `@${config.i18n}:taxation.entities.tax-class.title`,
103
+ titlePlural: `@${config.i18n}:taxation.entities.tax-class.plural`,
104
+ icon: 'fa-light fa-scale-balanced',
105
+ },
106
+ taxRegion: {
107
+ name: 'TaxRegion',
108
+ title: `@${config.i18n}:taxation.entities.tax-region.title`,
109
+ titlePlural: `@${config.i18n}:taxation.entities.tax-region.plural`,
110
+ icon: 'fa-light fa-map-location-dot',
111
+ },
112
+ taxRule: {
113
+ name: 'TaxRule',
114
+ title: `@${config.i18n}:taxation.entities.tax-rule.title`,
115
+ titlePlural: `@${config.i18n}:taxation.entities.tax-rule.plural`,
116
+ icon: 'fa-light fa-scroll',
117
+ },
118
+ paymentTerm: {
119
+ name: 'PaymentTerm',
120
+ title: `@${config.i18n}:payments.entities.payment-term.title`,
121
+ titlePlural: `@${config.i18n}:payments.entities.payment-term.plural`,
122
+ icon: 'fa-light fa-calendar-check',
123
+ },
124
+ paymentMethod: {
125
+ name: 'PaymentMethod',
126
+ title: `@${config.i18n}:payments.entities.payment-method.title`,
127
+ titlePlural: `@${config.i18n}:payments.entities.payment-method.plural`,
128
+ icon: 'fa-light fa-credit-card',
129
+ },
130
+ fiscalCalendar: {
131
+ name: 'FiscalCalendar',
132
+ title: `@${config.i18n}:calendars.entities.fiscal-calendar.title`,
133
+ titlePlural: `@${config.i18n}:calendars.entities.fiscal-calendar.plural`,
134
+ icon: 'fa-light fa-calendar-days',
135
+ },
136
+ financialDimension: {
137
+ name: 'FinancialDimension',
138
+ title: `@${config.i18n}:dimensions.entities.financial-dimension.title`,
139
+ titlePlural: `@${config.i18n}:dimensions.entities.financial-dimension.plural`,
140
+ icon: 'fa-light fa-layer-group',
141
+ },
142
+ },
143
+ };
144
+
145
+ //#endregion
146
+
147
+ //#endregion
148
+
149
+ //#endregion
150
+
151
+ //#endregion
152
+
153
+ //#endregion
154
+
155
+ //#endregion
156
+
157
+ //#endregion
158
+
159
+ //#endregion
160
+
161
+ //#endregion
162
+
163
+ //#region ---- Contracts barrel ----
164
+
165
+ /**
166
+ * Generated bundle index. Do not edit.
167
+ */
168
+
169
+ export { AXMFinancialCoreFeatureKeys, AXMFinancialCoreMenuKeys, AXMFinancialCorePermissionKeys, AXPFinancePermissionKeys, RootConfig };
170
+ //# sourceMappingURL=acorex-platform-module-financial-core-client-contracts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-financial-core-client-contracts.mjs","sources":["../../../../libs/modules/financial-core/contracts/src/features.keys.ts","../../../../libs/modules/financial-core/contracts/src/menu.keys.ts","../../../../libs/modules/financial-core/contracts/src/permission.keys.ts","../../../../libs/modules/financial-core/contracts/src/root-config.ts","../../../../libs/modules/financial-core/contracts/src/entities/currency/currency.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/exchange-rate/exchange-rate.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/financial-dimension/financial-dimension.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/fiscal-calendar/fiscal-calendar.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/payment-method/payment-method.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/payment-term/payment-term.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/tax-class/tax-class.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/tax-region/tax-region.types.ts","../../../../libs/modules/financial-core/contracts/src/entities/tax-rule/tax-rule.types.ts","../../../../libs/modules/financial-core/contracts/src/index.ts","../../../../libs/modules/financial-core/contracts/src/acorex-platform-module-financial-core-client-contracts.ts"],"sourcesContent":["export const AXMFinancialCoreFeatureKeys = {\n Currencies: 'FinancialCore:Feature:Currencies',\n ExchangeRates: 'FinancialCore:Feature:ExchangeRates',\n Taxation: 'FinancialCore:Feature:Taxation',\n Payments: 'FinancialCore:Feature:Payments',\n FiscalCalendars: 'FinancialCore:Feature:FiscalCalendars',\n FinancialDimensions: 'FinancialCore:Feature:FinancialDimensions',\n} as const;\n\n","export const AXMFinancialCoreMenuKeys = {\n Root: 'financial-core',\n Currencies: 'financial-core.currencies',\n ExchangeRates: 'financial-core.exchange-rates',\n Divider1: 'financial-core.divider-1',\n TaxClasses: 'financial-core.tax-classes',\n TaxRegions: 'financial-core.tax-regions',\n TaxRules: 'financial-core.tax-rules',\n Divider2: 'financial-core.divider-2',\n PaymentTerms: 'financial-core.payment-terms',\n PaymentMethods: 'financial-core.payment-methods',\n Divider3: 'financial-core.divider-3',\n FiscalCalendars: 'financial-core.fiscal-calendars',\n Divider4: 'financial-core.divider-4',\n FinancialDimensions: 'financial-core.financial-dimensions',\n} as const;\n","/**\n * Finance capabilities used by this module.\n * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).\n */\nexport const AXPFinancePermissionKeys = {\n Access: 'Finance:Permission:Access',\n MaintainFinance: 'Finance:Permission:MaintainFinance',\n Setup: 'Finance:Permission:Setup',\n} as const;\n\n/**\n * @deprecated Prefer {@link AXPFinancePermissionKeys}.\n * Legacy nested shape kept so existing imports compile during migration.\n */\nexport const AXMFinancialCorePermissionKeys = {\n FinancialCore: {\n Currency: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n ExchangeRate: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n TaxClass: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n TaxRegion: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n TaxRule: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n PaymentTerm: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n PaymentMethod: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n FiscalCalendar: {\n Management: AXPFinancePermissionKeys.Setup,\n View: AXPFinancePermissionKeys.Setup,\n Create: AXPFinancePermissionKeys.Setup,\n Update: AXPFinancePermissionKeys.Setup,\n Delete: AXPFinancePermissionKeys.Setup,\n },\n FinancialDimension: {\n Management: AXPFinancePermissionKeys.MaintainFinance,\n },\n },\n} as const;\n","const config = {\n i18n: 'financial-core',\n module: 'FinancialCore',\n};\n\nexport const RootConfig = {\n config,\n module: {\n name: config.module,\n title: `@${config.i18n}:module.title`,\n icon: 'fa-light fa-sack-dollar',\n },\n entities: {\n currency: {\n name: 'Currency',\n title: `@${config.i18n}:currencies.entities.currency.title`,\n titlePlural: `@${config.i18n}:currencies.entities.currency.plural`,\n icon: 'fa-light fa-coins',\n },\n exchangeRate: {\n name: 'ExchangeRate',\n title: `@${config.i18n}:exchange-rates.entities.exchange-rate.title`,\n titlePlural: `@${config.i18n}:exchange-rates.entities.exchange-rate.plural`,\n icon: 'fa-light fa-arrows-rotate',\n },\n taxClass: {\n name: 'TaxClass',\n title: `@${config.i18n}:taxation.entities.tax-class.title`,\n titlePlural: `@${config.i18n}:taxation.entities.tax-class.plural`,\n icon: 'fa-light fa-scale-balanced',\n },\n taxRegion: {\n name: 'TaxRegion',\n title: `@${config.i18n}:taxation.entities.tax-region.title`,\n titlePlural: `@${config.i18n}:taxation.entities.tax-region.plural`,\n icon: 'fa-light fa-map-location-dot',\n },\n taxRule: {\n name: 'TaxRule',\n title: `@${config.i18n}:taxation.entities.tax-rule.title`,\n titlePlural: `@${config.i18n}:taxation.entities.tax-rule.plural`,\n icon: 'fa-light fa-scroll',\n },\n paymentTerm: {\n name: 'PaymentTerm',\n title: `@${config.i18n}:payments.entities.payment-term.title`,\n titlePlural: `@${config.i18n}:payments.entities.payment-term.plural`,\n icon: 'fa-light fa-calendar-check',\n },\n paymentMethod: {\n name: 'PaymentMethod',\n title: `@${config.i18n}:payments.entities.payment-method.title`,\n titlePlural: `@${config.i18n}:payments.entities.payment-method.plural`,\n icon: 'fa-light fa-credit-card',\n },\n fiscalCalendar: {\n name: 'FiscalCalendar',\n title: `@${config.i18n}:calendars.entities.fiscal-calendar.title`,\n titlePlural: `@${config.i18n}:calendars.entities.fiscal-calendar.plural`,\n icon: 'fa-light fa-calendar-days',\n },\n financialDimension: {\n name: 'FinancialDimension',\n title: `@${config.i18n}:dimensions.entities.financial-dimension.title`,\n titlePlural: `@${config.i18n}:dimensions.entities.financial-dimension.plural`,\n icon: 'fa-light fa-layer-group',\n },\n },\n} as const;\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Currency Model ----\n\nexport interface AXMFinancialCoreCurrencyEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n symbol: string;\n isoNumber?: string | null;\n decimalPlaces: number;\n thousandSeparator?: string | null;\n decimalSeparator?: string | null;\n formatPattern?: string | null;\n isDefault?: boolean;\n isDisabled?: boolean;\n}\n\n//#endregion\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Exchange Rate Model ----\n\nexport interface AXMFinancialCoreExchangeRateEntityModel extends AXPEntityModel<string> {\n pairCode: string;\n title: AXPMultiLanguageString;\n baseCurrencyId: string;\n quoteCurrencyId: string;\n rate: number;\n inverseRate?: number;\n method?: string;\n source?: string;\n status?: string;\n effectiveFrom?: Date;\n effectiveTo?: Date | null;\n baseCurrency?: { id: string; title: AXPMultiLanguageString; symbol: string };\n quoteCurrency?: { id: string; title: AXPMultiLanguageString; symbol: string };\n}\n\n//#endregion\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Financial Dimension Model ----\n\nexport interface AXMFinancialCoreFinancialDimensionEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n description?: AXPMultiLanguageString | null;\n dimensionType: string;\n parentId?: string | null;\n parent?: { id: string; title: AXPMultiLanguageString };\n hierarchyPath?: string;\n displayOrder?: number;\n isLeaf?: boolean;\n isArchived?: boolean;\n}\n\n//#endregion\n\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Fiscal Calendar Model ----\n\nexport interface AXMFinancialCoreFiscalCalendarEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n description?: AXPMultiLanguageString | null;\n fiscalYear: number;\n startDate: Date;\n endDate: Date;\n templateCalendarId?: string | null;\n closingPeriods?: number;\n status?: string;\n isLocked?: boolean;\n isDefault?: boolean;\n}\n\n//#endregion\n\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Payment Method Model ----\n\nexport interface AXMFinancialCorePaymentMethodEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n description?: AXPMultiLanguageString | null;\n type: string;\n provider?: string | null;\n integrationType?: string | null;\n feePercent?: number;\n settlementTimeDays?: number;\n supportsRefunds?: boolean;\n supportsRecurring?: boolean;\n instructions?: string | null;\n isDisabled?: boolean;\n}\n\n//#endregion\n\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Payment Term Model ----\n\nexport interface AXMFinancialCorePaymentTermEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n description?: AXPMultiLanguageString | null;\n netDueDays: number;\n discountPercent?: number;\n discountDays?: number;\n gracePeriodDays?: number;\n autoRenew?: boolean;\n isDisabled?: boolean;\n}\n\n//#endregion\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Tax Class Model ----\n\nexport interface AXMFinancialCoreTaxClassEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n description?: AXPMultiLanguageString | null;\n type: string;\n defaultRate: number;\n isCompound?: boolean;\n priority?: number;\n isDisabled?: boolean;\n}\n\n//#endregion\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Tax Region Model ----\n\nexport interface AXMFinancialCoreTaxRegionEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n countryCode: string;\n regionCode?: string | null;\n defaultCurrencyId?: string | null;\n currency?: { id: string; title: AXPMultiLanguageString };\n taxAuthorityName?: string | null;\n isDefault?: boolean;\n isDisabled?: boolean;\n}\n\n//#endregion\n","import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityModel } from '@acorex-platform/framework-shared/entity';\n//#region ---- Tax Rule Model ----\n\nexport interface AXMFinancialCoreTaxRuleEntityModel extends AXPEntityModel<string> {\n code: string;\n title: AXPMultiLanguageString;\n taxRegionId: string;\n taxClassId: string;\n taxRegion?: { id: string; title: AXPMultiLanguageString };\n taxClass?: { id: string; title: AXPMultiLanguageString };\n priority?: number;\n calculationMethod: string;\n rate: number;\n thresholdAmount?: number;\n conditionSummary?: string | null;\n effectiveFrom?: Date;\n effectiveTo?: Date | null;\n isDisabled?: boolean;\n}\n\n//#endregion\n","//#region ---- Contracts barrel ----\n\nexport * from './features.keys';\nexport * from './menu.keys';\nexport * from './permission.keys';\n\nexport * from './root-config';\n\n//#endregion\n\nexport * from './entities';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import { AXMFinancialCoreFeatureKeys } from '@acorex-platform/module-financial-core-client/contracts';
2
+
3
+ //#region ---- Imports ----
4
+ //#endregion
5
+ //#region ---- Feature Definition Provider ----
6
+ /**
7
+ * Financial Core Feature Definition Provider.
8
+ * Provides feature definitions for the Financial Core module.
9
+ */
10
+ class AXMFinancialCoreFeatureDefinitionProvider {
11
+ async provide(context) {
12
+ // Currencies feature
13
+ context.addFeature(AXMFinancialCoreFeatureKeys.Currencies, {
14
+ title: '@financial-core:features.currencies.title',
15
+ description: '@financial-core:features.currencies.description',
16
+ defaultValue: true,
17
+ type: 'boolean',
18
+ });
19
+ // Exchange Rates feature
20
+ context.addFeature(AXMFinancialCoreFeatureKeys.ExchangeRates, {
21
+ title: '@financial-core:features.exchange-rates.title',
22
+ description: '@financial-core:features.exchange-rates.description',
23
+ defaultValue: true,
24
+ type: 'boolean',
25
+ });
26
+ // Taxation feature
27
+ context.addFeature(AXMFinancialCoreFeatureKeys.Taxation, {
28
+ title: '@financial-core:features.taxation.title',
29
+ description: '@financial-core:features.taxation.description',
30
+ defaultValue: true,
31
+ type: 'boolean',
32
+ });
33
+ // Payments feature
34
+ context.addFeature(AXMFinancialCoreFeatureKeys.Payments, {
35
+ title: '@financial-core:features.payments.title',
36
+ description: '@financial-core:features.payments.description',
37
+ defaultValue: true,
38
+ type: 'boolean',
39
+ });
40
+ // Fiscal Calendars feature
41
+ context.addFeature(AXMFinancialCoreFeatureKeys.FiscalCalendars, {
42
+ title: '@financial-core:features.fiscal-calendars.title',
43
+ description: '@financial-core:features.fiscal-calendars.description',
44
+ defaultValue: true,
45
+ type: 'boolean',
46
+ });
47
+ // Financial Dimensions feature
48
+ context.addFeature(AXMFinancialCoreFeatureKeys.FinancialDimensions, {
49
+ title: '@financial-core:features.financial-dimensions.title',
50
+ description: '@financial-core:features.financial-dimensions.description',
51
+ defaultValue: true,
52
+ type: 'boolean',
53
+ });
54
+ }
55
+ }
56
+ //#endregion
57
+
58
+ export { AXMFinancialCoreFeatureDefinitionProvider };
59
+ //# sourceMappingURL=acorex-platform-module-financial-core-client-feature-definition.provider-C-GQzLcX.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-financial-core-client-feature-definition.provider-C-GQzLcX.mjs","sources":["../../../../libs/modules/financial-core/client/src/lib/feature-definition.provider.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport {\n AXPFeatureDefinitionProvider,\n AXPFeatureDefinitionProviderContext,\n} from '@acorex-platform/framework-client/core';\nimport { AXMFinancialCoreFeatureKeys } from '@acorex-platform/module-financial-core-client/contracts';\n\n//#endregion\n\n//#region ---- Feature Definition Provider ----\n\n/**\n * Financial Core Feature Definition Provider.\n * Provides feature definitions for the Financial Core module.\n */\nexport class AXMFinancialCoreFeatureDefinitionProvider implements AXPFeatureDefinitionProvider {\n async provide(context: AXPFeatureDefinitionProviderContext): Promise<void> {\n // Currencies feature\n context.addFeature(AXMFinancialCoreFeatureKeys.Currencies, {\n title: '@financial-core:features.currencies.title',\n description: '@financial-core:features.currencies.description',\n defaultValue: true,\n type: 'boolean',\n });\n\n // Exchange Rates feature\n context.addFeature(AXMFinancialCoreFeatureKeys.ExchangeRates, {\n title: '@financial-core:features.exchange-rates.title',\n description: '@financial-core:features.exchange-rates.description',\n defaultValue: true,\n type: 'boolean',\n });\n\n // Taxation feature\n context.addFeature(AXMFinancialCoreFeatureKeys.Taxation, {\n title: '@financial-core:features.taxation.title',\n description: '@financial-core:features.taxation.description',\n defaultValue: true,\n type: 'boolean',\n });\n\n // Payments feature\n context.addFeature(AXMFinancialCoreFeatureKeys.Payments, {\n title: '@financial-core:features.payments.title',\n description: '@financial-core:features.payments.description',\n defaultValue: true,\n type: 'boolean',\n });\n\n // Fiscal Calendars feature\n context.addFeature(AXMFinancialCoreFeatureKeys.FiscalCalendars, {\n title: '@financial-core:features.fiscal-calendars.title',\n description: '@financial-core:features.fiscal-calendars.description',\n defaultValue: true,\n type: 'boolean',\n });\n\n // Financial Dimensions feature\n context.addFeature(AXMFinancialCoreFeatureKeys.FinancialDimensions, {\n title: '@financial-core:features.financial-dimensions.title',\n description: '@financial-core:features.financial-dimensions.description',\n defaultValue: true,\n type: 'boolean',\n });\n }\n}\n\n//#endregion\n\n"],"names":[],"mappings":";;AAAA;AAQA;AAEA;AAEA;;;AAGG;MACU,yCAAyC,CAAA;IAClD,MAAM,OAAO,CAAC,OAA4C,EAAA;;AAEtD,QAAA,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,UAAU,EAAE;AACvD,YAAA,KAAK,EAAE,2CAA2C;AAClD,YAAA,WAAW,EAAE,iDAAiD;AAC9D,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,IAAI,EAAE,SAAS;AAClB,SAAA,CAAC;;AAGF,QAAA,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,aAAa,EAAE;AAC1D,YAAA,KAAK,EAAE,+CAA+C;AACtD,YAAA,WAAW,EAAE,qDAAqD;AAClE,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,IAAI,EAAE,SAAS;AAClB,SAAA,CAAC;;AAGF,QAAA,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,QAAQ,EAAE;AACrD,YAAA,KAAK,EAAE,yCAAyC;AAChD,YAAA,WAAW,EAAE,+CAA+C;AAC5D,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,IAAI,EAAE,SAAS;AAClB,SAAA,CAAC;;AAGF,QAAA,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,QAAQ,EAAE;AACrD,YAAA,KAAK,EAAE,yCAAyC;AAChD,YAAA,WAAW,EAAE,+CAA+C;AAC5D,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,IAAI,EAAE,SAAS;AAClB,SAAA,CAAC;;AAGF,QAAA,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,eAAe,EAAE;AAC5D,YAAA,KAAK,EAAE,iDAAiD;AACxD,YAAA,WAAW,EAAE,uDAAuD;AACpE,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,IAAI,EAAE,SAAS;AAClB,SAAA,CAAC;;AAGF,QAAA,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC,mBAAmB,EAAE;AAChE,YAAA,KAAK,EAAE,qDAAqD;AAC5D,YAAA,WAAW,EAAE,2DAA2D;AACxE,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,IAAI,EAAE,SAAS;AAClB,SAAA,CAAC;IACN;AACH;AAED;;;;"}
@@ -0,0 +1,369 @@
1
+ import * as i0 from '@angular/core';
2
+ import { NgModule, inject, Injectable } from '@angular/core';
3
+ import { AXP_MODULE_MANIFEST_PROVIDER, provideLazyProvider, AXP_FEATURE_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/core';
4
+ import { RootConfig, AXPFinancePermissionKeys, AXMFinancialCoreMenuKeys } from '@acorex-platform/module-financial-core-client/contracts';
5
+ import { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER, AXPSearchCommandProvider, createEntityCommandOptions } from '@acorex-platform/framework-client/common';
6
+ import { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/auth';
7
+ import { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';
8
+ import { AXPCommonMenuKeys, AXPCommonPermissionGroupKeys } from '@acorex-platform/module-common-client/contracts';
9
+
10
+ //#region ---- Imports ----
11
+ //#endregion
12
+ //#region ---- Manifest Definition ----
13
+ /**
14
+ * Financial Core Module Manifest.
15
+ * Defines module metadata and dependencies.
16
+ */
17
+ const FinancialCoreManifest = {
18
+ name: RootConfig.module.name,
19
+ version: '1.0.0',
20
+ title: RootConfig.module.title,
21
+ icon: RootConfig.module.icon,
22
+ i18n: RootConfig.config.i18n,
23
+ type: 'domain',
24
+ domain: 'finance-commerce',
25
+ // Module dependencies (optional)
26
+ };
27
+ //#endregion
28
+
29
+ //#region ---- Imports ----
30
+ //#endregion
31
+ //#region ---- Module ----
32
+ class AXMFinancialCoreModule {
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFinancialCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
34
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: AXMFinancialCoreModule }); }
35
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFinancialCoreModule, providers: [
36
+ // Module Manifest Provider
37
+ {
38
+ provide: AXP_MODULE_MANIFEST_PROVIDER,
39
+ useValue: FinancialCoreManifest,
40
+ multi: true,
41
+ },
42
+ // Provider references (now using tokens)
43
+ provideLazyProvider(AXP_FEATURE_DEFINITION_PROVIDER, () => import('./acorex-platform-module-financial-core-client-feature-definition.provider-C-GQzLcX.mjs').then(m => m.AXMFinancialCoreFeatureDefinitionProvider)),
44
+ provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => Promise.resolve().then(function () { return permissionDefinition_provider; }).then(m => m.AXMFinancialCorePermissionDefinitionProvider)),
45
+ provideLazyProvider(AXP_MENU_PROVIDER, () => Promise.resolve().then(function () { return menu_provider; }).then(m => m.AXMFinancialCoreMenuProvider)),
46
+ provideLazyProvider(AXP_SEARCH_PROVIDER, () => Promise.resolve().then(function () { return searchCommand_provider; }).then(m => m.AXMFinancialCoreSearchCommandProvider)),
47
+ ] }); }
48
+ }
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFinancialCoreModule, decorators: [{
50
+ type: NgModule,
51
+ args: [{
52
+ imports: [],
53
+ providers: [
54
+ // Module Manifest Provider
55
+ {
56
+ provide: AXP_MODULE_MANIFEST_PROVIDER,
57
+ useValue: FinancialCoreManifest,
58
+ multi: true,
59
+ },
60
+ // Provider references (now using tokens)
61
+ provideLazyProvider(AXP_FEATURE_DEFINITION_PROVIDER, () => import('./acorex-platform-module-financial-core-client-feature-definition.provider-C-GQzLcX.mjs').then(m => m.AXMFinancialCoreFeatureDefinitionProvider)),
62
+ provideLazyProvider(AXP_PERMISSION_DEFINITION_PROVIDER, () => Promise.resolve().then(function () { return permissionDefinition_provider; }).then(m => m.AXMFinancialCorePermissionDefinitionProvider)),
63
+ provideLazyProvider(AXP_MENU_PROVIDER, () => Promise.resolve().then(function () { return menu_provider; }).then(m => m.AXMFinancialCoreMenuProvider)),
64
+ provideLazyProvider(AXP_SEARCH_PROVIDER, () => Promise.resolve().then(function () { return searchCommand_provider; }).then(m => m.AXMFinancialCoreSearchCommandProvider)),
65
+ ],
66
+ }]
67
+ }] });
68
+
69
+ //#region ---- Imports ----
70
+ //#endregion
71
+ //#region ---- Menu Provider ----
72
+ class AXMFinancialCoreMenuProvider {
73
+ constructor() {
74
+ this.entityService = inject(AXPEntityService);
75
+ }
76
+ async provide(context) {
77
+ const module = RootConfig.module;
78
+ const keys = AXPFinancePermissionKeys;
79
+ context.find(AXPCommonMenuKeys.Configuration).addItems([
80
+ {
81
+ name: AXMFinancialCoreMenuKeys.Root,
82
+ priority: 8900,
83
+ text: "@financial-core:module.menus.root.title",
84
+ icon: module.icon,
85
+ policy: {
86
+ features: [RootConfig.module.name],
87
+ },
88
+ children: [
89
+ {
90
+ name: AXMFinancialCoreMenuKeys.Currencies,
91
+ text: RootConfig.entities.currency.titlePlural,
92
+ icon: RootConfig.entities.currency.icon,
93
+ priority: 1,
94
+ path: this.entityService.withEntity(module.name, RootConfig.entities.currency.name).createPath(),
95
+ policy: {
96
+ permissions: [keys.MaintainFinance],
97
+ },
98
+ },
99
+ {
100
+ name: AXMFinancialCoreMenuKeys.ExchangeRates,
101
+ text: RootConfig.entities.exchangeRate.titlePlural,
102
+ icon: RootConfig.entities.exchangeRate.icon,
103
+ priority: 2,
104
+ path: this.entityService.withEntity(module.name, RootConfig.entities.exchangeRate.name).createPath(),
105
+ policy: {
106
+ permissions: [keys.MaintainFinance],
107
+ },
108
+ },
109
+ {
110
+ name: AXMFinancialCoreMenuKeys.Divider1,
111
+ text: '',
112
+ type: 'break',
113
+ priority: 3,
114
+ },
115
+ {
116
+ name: AXMFinancialCoreMenuKeys.TaxClasses,
117
+ text: RootConfig.entities.taxClass.titlePlural,
118
+ icon: RootConfig.entities.taxClass.icon,
119
+ priority: 4,
120
+ path: this.entityService.withEntity(module.name, RootConfig.entities.taxClass.name).createPath(),
121
+ policy: {
122
+ permissions: [keys.MaintainFinance],
123
+ },
124
+ },
125
+ {
126
+ name: AXMFinancialCoreMenuKeys.TaxRegions,
127
+ text: RootConfig.entities.taxRegion.titlePlural,
128
+ icon: RootConfig.entities.taxRegion.icon,
129
+ priority: 5,
130
+ path: this.entityService.withEntity(module.name, RootConfig.entities.taxRegion.name).createPath(),
131
+ policy: {
132
+ permissions: [keys.MaintainFinance],
133
+ },
134
+ },
135
+ {
136
+ name: AXMFinancialCoreMenuKeys.TaxRules,
137
+ text: RootConfig.entities.taxRule.titlePlural,
138
+ icon: RootConfig.entities.taxRule.icon,
139
+ priority: 6,
140
+ path: this.entityService.withEntity(module.name, RootConfig.entities.taxRule.name).createPath(),
141
+ policy: {
142
+ permissions: [keys.MaintainFinance],
143
+ },
144
+ },
145
+ {
146
+ name: AXMFinancialCoreMenuKeys.Divider2,
147
+ text: '',
148
+ type: 'break',
149
+ priority: 7,
150
+ },
151
+ {
152
+ name: AXMFinancialCoreMenuKeys.PaymentTerms,
153
+ text: RootConfig.entities.paymentTerm.titlePlural,
154
+ icon: RootConfig.entities.paymentTerm.icon,
155
+ priority: 8,
156
+ path: this.entityService.withEntity(module.name, RootConfig.entities.paymentTerm.name).createPath(),
157
+ policy: {
158
+ permissions: [keys.MaintainFinance],
159
+ },
160
+ },
161
+ {
162
+ name: AXMFinancialCoreMenuKeys.PaymentMethods,
163
+ text: RootConfig.entities.paymentMethod.titlePlural,
164
+ icon: RootConfig.entities.paymentMethod.icon,
165
+ priority: 9,
166
+ path: this.entityService.withEntity(module.name, RootConfig.entities.paymentMethod.name).createPath(),
167
+ policy: {
168
+ permissions: [keys.MaintainFinance],
169
+ },
170
+ },
171
+ {
172
+ name: AXMFinancialCoreMenuKeys.Divider3,
173
+ text: '',
174
+ type: 'break',
175
+ priority: 10,
176
+ },
177
+ {
178
+ name: AXMFinancialCoreMenuKeys.FiscalCalendars,
179
+ text: RootConfig.entities.fiscalCalendar.titlePlural,
180
+ icon: RootConfig.entities.fiscalCalendar.icon,
181
+ priority: 11,
182
+ path: this.entityService.withEntity(module.name, RootConfig.entities.fiscalCalendar.name).createPath(),
183
+ policy: {
184
+ permissions: [keys.Setup],
185
+ },
186
+ },
187
+ {
188
+ name: AXMFinancialCoreMenuKeys.Divider4,
189
+ text: '',
190
+ type: 'break',
191
+ priority: 12,
192
+ },
193
+ {
194
+ name: AXMFinancialCoreMenuKeys.FinancialDimensions,
195
+ text: RootConfig.entities.financialDimension.titlePlural,
196
+ icon: RootConfig.entities.financialDimension.icon,
197
+ priority: 13,
198
+ path: this.entityService.withEntity(module.name, RootConfig.entities.financialDimension.name).createPath(),
199
+ policy: {
200
+ permissions: [keys.MaintainFinance],
201
+ },
202
+ },
203
+ ],
204
+ },
205
+ ]);
206
+ }
207
+ }
208
+ //#endregion
209
+
210
+ var menu_provider = /*#__PURE__*/Object.freeze({
211
+ __proto__: null,
212
+ AXMFinancialCoreMenuProvider: AXMFinancialCoreMenuProvider
213
+ });
214
+
215
+ //#endregion
216
+ //#region ---- Permission Definition Provider ----
217
+ /**
218
+ * Registers financial-core capabilities into the shared Finance group.
219
+ */
220
+ class AXMFinancialCorePermissionDefinitionProvider {
221
+ async define(context) {
222
+ const keys = AXPFinancePermissionKeys;
223
+ const groups = AXPCommonPermissionGroupKeys;
224
+ const P = '@common:finance.permissions';
225
+ const G = '@common:permission-groups';
226
+ context
227
+ .addGroup(groups.Finance.Root, `${G}.finance.title`, `${G}.finance.description`, { order: 40 })
228
+ .addPermission(keys.Access, `${P}.access.title`, `${P}.access.description`)
229
+ .endPermission()
230
+ .addPermission(keys.MaintainFinance, `${P}.maintain-finance.title`, `${P}.maintain-finance.description`)
231
+ .endPermission()
232
+ .addPermission(keys.Setup, `${P}.setup.title`, `${P}.setup.description`)
233
+ .endPermission()
234
+ .endGroup();
235
+ }
236
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFinancialCorePermissionDefinitionProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
237
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFinancialCorePermissionDefinitionProvider }); }
238
+ }
239
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMFinancialCorePermissionDefinitionProvider, decorators: [{
240
+ type: Injectable
241
+ }] });
242
+
243
+ var permissionDefinition_provider = /*#__PURE__*/Object.freeze({
244
+ __proto__: null,
245
+ AXMFinancialCorePermissionDefinitionProvider: AXMFinancialCorePermissionDefinitionProvider
246
+ });
247
+
248
+ //#region ---- Imports ----
249
+ //#endregion
250
+ //#region ---- Search Command Provider ----
251
+ class AXMFinancialCoreSearchCommandProvider extends AXPSearchCommandProvider {
252
+ constructor() {
253
+ super(...arguments);
254
+ this.commands = [
255
+ {
256
+ id: 'create-currency',
257
+ group: 'command',
258
+ title: '@financial-core:currencies.search.create-currency.title',
259
+ icon: RootConfig.entities.currency.icon,
260
+ description: '@financial-core:currencies.search.create-currency.description',
261
+ command: {
262
+ name: 'Entity:Create',
263
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.currency.name}`, { name: RootConfig.entities.currency.name, module: RootConfig.module.name, title: RootConfig.entities.currency.title }),
264
+ },
265
+ },
266
+ {
267
+ id: 'create-exchange-rate',
268
+ group: 'command',
269
+ title: '@financial-core:exchange-rates.search.capture-exchange-rate.title',
270
+ icon: RootConfig.entities.exchangeRate.icon,
271
+ description: '@financial-core:exchange-rates.search.capture-exchange-rate.description',
272
+ command: {
273
+ name: 'Entity:Create',
274
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.exchangeRate.name}`, { name: RootConfig.entities.exchangeRate.name, module: RootConfig.module.name, title: RootConfig.entities.exchangeRate.title }),
275
+ },
276
+ },
277
+ {
278
+ id: 'create-tax-class',
279
+ group: 'command',
280
+ title: '@financial-core:taxation.search.create-tax-class.title',
281
+ icon: RootConfig.entities.taxClass.icon,
282
+ description: '@financial-core:taxation.search.create-tax-class.description',
283
+ command: {
284
+ name: 'Entity:Create',
285
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.taxClass.name}`, { name: RootConfig.entities.taxClass.name, module: RootConfig.module.name, title: RootConfig.entities.taxClass.title }),
286
+ },
287
+ },
288
+ {
289
+ id: 'create-tax-region',
290
+ group: 'command',
291
+ title: '@financial-core:taxation.search.create-tax-region.title',
292
+ icon: RootConfig.entities.taxRegion.icon,
293
+ description: '@financial-core:taxation.search.create-tax-region.description',
294
+ command: {
295
+ name: 'Entity:Create',
296
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.taxRegion.name}`, { name: RootConfig.entities.taxRegion.name, module: RootConfig.module.name, title: RootConfig.entities.taxRegion.title }),
297
+ },
298
+ },
299
+ {
300
+ id: 'create-tax-rule',
301
+ group: 'command',
302
+ title: '@financial-core:taxation.search.define-tax-rule.title',
303
+ icon: RootConfig.entities.taxRule.icon,
304
+ description: '@financial-core:taxation.search.define-tax-rule.description',
305
+ command: {
306
+ name: 'Entity:Create',
307
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.taxRule.name}`, { name: RootConfig.entities.taxRule.name, module: RootConfig.module.name, title: RootConfig.entities.taxRule.title }),
308
+ },
309
+ },
310
+ {
311
+ id: 'create-payment-term',
312
+ group: 'command',
313
+ title: '@financial-core:payments.search.create-payment-term.title',
314
+ icon: RootConfig.entities.paymentTerm.icon,
315
+ description: '@financial-core:payments.search.create-payment-term.description',
316
+ command: {
317
+ name: 'Entity:Create',
318
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.paymentTerm.name}`, { name: RootConfig.entities.paymentTerm.name, module: RootConfig.module.name, title: RootConfig.entities.paymentTerm.title }),
319
+ },
320
+ },
321
+ {
322
+ id: 'create-payment-method',
323
+ group: 'command',
324
+ title: '@financial-core:payments.search.add-payment-method.title',
325
+ icon: RootConfig.entities.paymentMethod.icon,
326
+ description: '@financial-core:payments.search.add-payment-method.description',
327
+ command: {
328
+ name: 'Entity:Create',
329
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.paymentMethod.name}`, { name: RootConfig.entities.paymentMethod.name, module: RootConfig.module.name, title: RootConfig.entities.paymentMethod.title }),
330
+ },
331
+ },
332
+ {
333
+ id: 'create-fiscal-calendar',
334
+ group: 'command',
335
+ title: '@financial-core:calendars.search.publish-fiscal-calendar.title',
336
+ icon: RootConfig.entities.fiscalCalendar.icon,
337
+ description: '@financial-core:calendars.search.publish-fiscal-calendar.description',
338
+ command: {
339
+ name: 'Entity:Create',
340
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.fiscalCalendar.name}`, { name: RootConfig.entities.fiscalCalendar.name, module: RootConfig.module.name, title: RootConfig.entities.fiscalCalendar.title }),
341
+ },
342
+ },
343
+ {
344
+ id: 'create-financial-dimension',
345
+ group: 'command',
346
+ title: '@financial-core:dimensions.search.create-financial-dimension.title',
347
+ icon: RootConfig.entities.financialDimension.icon,
348
+ description: '@financial-core:dimensions.search.create-financial-dimension.description',
349
+ command: {
350
+ name: 'Entity:Create',
351
+ options: createEntityCommandOptions(`${RootConfig.module.name}.${RootConfig.entities.financialDimension.name}`, { name: RootConfig.entities.financialDimension.name, module: RootConfig.module.name, title: RootConfig.entities.financialDimension.title }),
352
+ },
353
+ },
354
+ ];
355
+ }
356
+ }
357
+ //#endregion
358
+
359
+ var searchCommand_provider = /*#__PURE__*/Object.freeze({
360
+ __proto__: null,
361
+ AXMFinancialCoreSearchCommandProvider: AXMFinancialCoreSearchCommandProvider
362
+ });
363
+
364
+ /**
365
+ * Generated bundle index. Do not edit.
366
+ */
367
+
368
+ export { AXMFinancialCoreMenuProvider, AXMFinancialCoreModule, AXMFinancialCorePermissionDefinitionProvider, AXMFinancialCoreSearchCommandProvider };
369
+ //# sourceMappingURL=acorex-platform-module-financial-core-client.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-financial-core-client.mjs","sources":["../../../../libs/modules/financial-core/client/src/lib/manifest.ts","../../../../libs/modules/financial-core/client/src/lib/financial-core.module.ts","../../../../libs/modules/financial-core/client/src/lib/menu.provider.ts","../../../../libs/modules/financial-core/client/src/lib/permission-definition.provider.ts","../../../../libs/modules/financial-core/client/src/lib/search-command.provider.ts","../../../../libs/modules/financial-core/client/src/acorex-platform-module-financial-core-client.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPModuleManifest } from '@acorex-platform/framework-client/core';\nimport { RootConfig } from '@acorex-platform/module-financial-core-client/contracts';\n\n//#endregion\n\n//#region ---- Manifest Definition ----\n\n/**\n * Financial Core Module Manifest.\n * Defines module metadata and dependencies.\n */\nexport const FinancialCoreManifest: AXPModuleManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n\n type: 'domain',\n domain: 'finance-commerce',\n // Module dependencies (optional)\n};\n\n//#endregion\n\n","//#region ---- Imports ----\n\nimport { NgModule } from '@angular/core';\nimport {\n AXP_MODULE_MANIFEST_PROVIDER,\n AXP_FEATURE_DEFINITION_PROVIDER,\n provideLazyProvider,\n} from '@acorex-platform/framework-client/core';\nimport { FinancialCoreManifest } from './manifest';\nimport { AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER } from '@acorex-platform/framework-client/common';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/auth';\n\n//#endregion\n\n//#region ---- Module ----\n\n@NgModule({\n imports: [],\n providers: [\n // Module Manifest Provider\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: FinancialCoreManifest,\n multi: true,\n },\n // Provider references (now using tokens)\n provideLazyProvider(\n AXP_FEATURE_DEFINITION_PROVIDER,\n () => import('./feature-definition.provider').then(m => m.AXMFinancialCoreFeatureDefinitionProvider)\n ),\n provideLazyProvider(\n AXP_PERMISSION_DEFINITION_PROVIDER,\n () => import('./permission-definition.provider').then(m => m.AXMFinancialCorePermissionDefinitionProvider)\n ),\n provideLazyProvider(\n AXP_MENU_PROVIDER,\n () => import('./menu.provider').then(m => m.AXMFinancialCoreMenuProvider)\n ),\n \n provideLazyProvider(\n AXP_SEARCH_PROVIDER,\n () => import('./search-command.provider').then(m => m.AXMFinancialCoreSearchCommandProvider)\n ),\n ],\n})\nexport class AXMFinancialCoreModule { }\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPMenuProvider, AXPMenuProviderContext } from '@acorex-platform/framework-client/common';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { inject } from '@angular/core';\nimport {\n RootConfig,\n AXPFinancePermissionKeys\n} from '@acorex-platform/module-financial-core-client/contracts';\nimport { AXMFinancialCoreMenuKeys } from '@acorex-platform/module-financial-core-client/contracts';\nimport {\n AXPCommonMenuKeys\n} from '@acorex-platform/module-common-client/contracts';\n\n//#endregion\n\n//#region ---- Menu Provider ----\n\nexport class AXMFinancialCoreMenuProvider implements AXPMenuProvider {\n private readonly entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const module = RootConfig.module;\n const keys = AXPFinancePermissionKeys;\n\n context.find(AXPCommonMenuKeys.Configuration).addItems([\n {\n name: AXMFinancialCoreMenuKeys.Root,\n priority: 8900,\n text: \"@financial-core:module.menus.root.title\",\n icon: module.icon,\n policy: {\n features: [RootConfig.module.name],\n },\n children: [\n {\n name: AXMFinancialCoreMenuKeys.Currencies,\n text: RootConfig.entities.currency.titlePlural,\n icon: RootConfig.entities.currency.icon,\n priority: 1,\n path: this.entityService.withEntity(module.name, RootConfig.entities.currency.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.ExchangeRates,\n text: RootConfig.entities.exchangeRate.titlePlural,\n icon: RootConfig.entities.exchangeRate.icon,\n priority: 2,\n path: this.entityService.withEntity(module.name, RootConfig.entities.exchangeRate.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.Divider1,\n text: '',\n type: 'break',\n priority: 3,\n },\n {\n name: AXMFinancialCoreMenuKeys.TaxClasses,\n text: RootConfig.entities.taxClass.titlePlural,\n icon: RootConfig.entities.taxClass.icon,\n priority: 4,\n path: this.entityService.withEntity(module.name, RootConfig.entities.taxClass.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.TaxRegions,\n text: RootConfig.entities.taxRegion.titlePlural,\n icon: RootConfig.entities.taxRegion.icon,\n priority: 5,\n path: this.entityService.withEntity(module.name, RootConfig.entities.taxRegion.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.TaxRules,\n text: RootConfig.entities.taxRule.titlePlural,\n icon: RootConfig.entities.taxRule.icon,\n priority: 6,\n path: this.entityService.withEntity(module.name, RootConfig.entities.taxRule.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.Divider2,\n text: '',\n type: 'break',\n priority: 7,\n },\n {\n name: AXMFinancialCoreMenuKeys.PaymentTerms,\n text: RootConfig.entities.paymentTerm.titlePlural,\n icon: RootConfig.entities.paymentTerm.icon,\n priority: 8,\n path: this.entityService.withEntity(module.name, RootConfig.entities.paymentTerm.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.PaymentMethods,\n text: RootConfig.entities.paymentMethod.titlePlural,\n icon: RootConfig.entities.paymentMethod.icon,\n priority: 9,\n path: this.entityService.withEntity(module.name, RootConfig.entities.paymentMethod.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.Divider3,\n text: '',\n type: 'break',\n priority: 10,\n },\n {\n name: AXMFinancialCoreMenuKeys.FiscalCalendars,\n text: RootConfig.entities.fiscalCalendar.titlePlural,\n icon: RootConfig.entities.fiscalCalendar.icon,\n priority: 11,\n path: this.entityService.withEntity(module.name, RootConfig.entities.fiscalCalendar.name).createPath(),\n policy: {\n permissions: [keys.Setup],\n },\n },\n {\n name: AXMFinancialCoreMenuKeys.Divider4,\n text: '',\n type: 'break',\n priority: 12,\n },\n {\n name: AXMFinancialCoreMenuKeys.FinancialDimensions,\n text: RootConfig.entities.financialDimension.titlePlural,\n icon: RootConfig.entities.financialDimension.icon,\n priority: 13,\n path: this.entityService.withEntity(module.name, RootConfig.entities.financialDimension.name).createPath(),\n policy: {\n permissions: [keys.MaintainFinance],\n },\n },\n ],\n },\n ]);\n }\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport {\n AXPPermissionDefinitionProvider,\n AXPPermissionDefinitionProviderContext,\n} from '@acorex-platform/framework-client/auth';\nimport {\n AXPCommonPermissionGroupKeys\n} from '@acorex-platform/module-common-client/contracts';\nimport {\n AXPFinancePermissionKeys\n} from '@acorex-platform/module-financial-core-client/contracts';\n\nimport { Injectable } from '@angular/core';\n\n//#endregion\n\n//#region ---- Permission Definition Provider ----\n\n/**\n * Registers financial-core capabilities into the shared Finance group.\n */\n@Injectable()\nexport class AXMFinancialCorePermissionDefinitionProvider implements AXPPermissionDefinitionProvider {\n async define(context: AXPPermissionDefinitionProviderContext): Promise<void> {\n const keys = AXPFinancePermissionKeys;\n const groups = AXPCommonPermissionGroupKeys;\n const P = '@common:finance.permissions';\n const G = '@common:permission-groups';\n\n context\n .addGroup(groups.Finance.Root, `${G}.finance.title`, `${G}.finance.description`, { order: 40 })\n .addPermission(keys.Access, `${P}.access.title`, `${P}.access.description`)\n .endPermission()\n .addPermission(\n keys.MaintainFinance,\n `${P}.maintain-finance.title`,\n `${P}.maintain-finance.description`,\n )\n .endPermission()\n .addPermission(keys.Setup, `${P}.setup.title`, `${P}.setup.description`)\n .endPermission()\n .endGroup();\n }\n}\n\n//#endregion\n","//#region ---- Imports ----\n\nimport { AXPSearchCommandProvider, AXPSearchResult, createEntityCommandOptions } from '@acorex-platform/framework-client/common';\nimport { RootConfig } from '@acorex-platform/module-financial-core-client/contracts';\n\n//#endregion\n\n//#region ---- Search Command Provider ----\n\nexport class AXMFinancialCoreSearchCommandProvider extends AXPSearchCommandProvider {\n commands: AXPSearchResult[] = [\n {\n id: 'create-currency',\n group: 'command',\n title: '@financial-core:currencies.search.create-currency.title',\n icon: RootConfig.entities.currency.icon,\n description: '@financial-core:currencies.search.create-currency.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.currency.name}`,\n { name: RootConfig.entities.currency.name, module: RootConfig.module.name, title: RootConfig.entities.currency.title }\n ),\n },\n },\n {\n id: 'create-exchange-rate',\n group: 'command',\n title: '@financial-core:exchange-rates.search.capture-exchange-rate.title',\n icon: RootConfig.entities.exchangeRate.icon,\n description: '@financial-core:exchange-rates.search.capture-exchange-rate.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.exchangeRate.name}`,\n { name: RootConfig.entities.exchangeRate.name, module: RootConfig.module.name, title: RootConfig.entities.exchangeRate.title }\n ),\n },\n },\n {\n id: 'create-tax-class',\n group: 'command',\n title: '@financial-core:taxation.search.create-tax-class.title',\n icon: RootConfig.entities.taxClass.icon,\n description: '@financial-core:taxation.search.create-tax-class.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.taxClass.name}`,\n { name: RootConfig.entities.taxClass.name, module: RootConfig.module.name, title: RootConfig.entities.taxClass.title }\n ),\n },\n },\n {\n id: 'create-tax-region',\n group: 'command',\n title: '@financial-core:taxation.search.create-tax-region.title',\n icon: RootConfig.entities.taxRegion.icon,\n description: '@financial-core:taxation.search.create-tax-region.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.taxRegion.name}`,\n { name: RootConfig.entities.taxRegion.name, module: RootConfig.module.name, title: RootConfig.entities.taxRegion.title }\n ),\n },\n },\n {\n id: 'create-tax-rule',\n group: 'command',\n title: '@financial-core:taxation.search.define-tax-rule.title',\n icon: RootConfig.entities.taxRule.icon,\n description: '@financial-core:taxation.search.define-tax-rule.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.taxRule.name}`,\n { name: RootConfig.entities.taxRule.name, module: RootConfig.module.name, title: RootConfig.entities.taxRule.title }\n ),\n },\n },\n {\n id: 'create-payment-term',\n group: 'command',\n title: '@financial-core:payments.search.create-payment-term.title',\n icon: RootConfig.entities.paymentTerm.icon,\n description: '@financial-core:payments.search.create-payment-term.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.paymentTerm.name}`,\n { name: RootConfig.entities.paymentTerm.name, module: RootConfig.module.name, title: RootConfig.entities.paymentTerm.title }\n ),\n },\n },\n {\n id: 'create-payment-method',\n group: 'command',\n title: '@financial-core:payments.search.add-payment-method.title',\n icon: RootConfig.entities.paymentMethod.icon,\n description: '@financial-core:payments.search.add-payment-method.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.paymentMethod.name}`,\n { name: RootConfig.entities.paymentMethod.name, module: RootConfig.module.name, title: RootConfig.entities.paymentMethod.title }\n ),\n },\n },\n {\n id: 'create-fiscal-calendar',\n group: 'command',\n title: '@financial-core:calendars.search.publish-fiscal-calendar.title',\n icon: RootConfig.entities.fiscalCalendar.icon,\n description: '@financial-core:calendars.search.publish-fiscal-calendar.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.fiscalCalendar.name}`,\n { name: RootConfig.entities.fiscalCalendar.name, module: RootConfig.module.name, title: RootConfig.entities.fiscalCalendar.title }\n ),\n },\n },\n {\n id: 'create-financial-dimension',\n group: 'command',\n title: '@financial-core:dimensions.search.create-financial-dimension.title',\n icon: RootConfig.entities.financialDimension.icon,\n description: '@financial-core:dimensions.search.create-financial-dimension.description',\n command: {\n name: 'Entity:Create',\n options: createEntityCommandOptions(\n `${RootConfig.module.name}.${RootConfig.entities.financialDimension.name}`,\n { name: RootConfig.entities.financialDimension.name, module: RootConfig.module.name, title: RootConfig.entities.financialDimension.title }\n ),\n },\n },\n ];\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@acorex-platform/module-financial-core-client",
3
+ "version": "0.0.21",
4
+ "sideEffects": false,
5
+ "peerDependencies": {
6
+ "@angular/common": "^21.0.0",
7
+ "@angular/core": "^21.0.0"
8
+ },
9
+ "dependencies": {
10
+ "tslib": "^2.3.0"
11
+ },
12
+ "module": "fesm2022/acorex-platform-module-financial-core-client.mjs",
13
+ "typings": "types/acorex-platform-module-financial-core-client.d.ts",
14
+ "exports": {
15
+ "./package.json": {
16
+ "default": "./package.json"
17
+ },
18
+ ".": {
19
+ "types": "./types/acorex-platform-module-financial-core-client.d.ts",
20
+ "default": "./fesm2022/acorex-platform-module-financial-core-client.mjs"
21
+ },
22
+ "./contracts": {
23
+ "types": "./types/acorex-platform-module-financial-core-client-contracts.d.ts",
24
+ "default": "./fesm2022/acorex-platform-module-financial-core-client-contracts.mjs"
25
+ }
26
+ },
27
+ "type": "module"
28
+ }
@@ -0,0 +1,291 @@
1
+ import { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';
2
+ import { AXPEntityModel } from '@acorex-platform/framework-shared/entity';
3
+
4
+ declare const AXMFinancialCoreFeatureKeys: {
5
+ readonly Currencies: "FinancialCore:Feature:Currencies";
6
+ readonly ExchangeRates: "FinancialCore:Feature:ExchangeRates";
7
+ readonly Taxation: "FinancialCore:Feature:Taxation";
8
+ readonly Payments: "FinancialCore:Feature:Payments";
9
+ readonly FiscalCalendars: "FinancialCore:Feature:FiscalCalendars";
10
+ readonly FinancialDimensions: "FinancialCore:Feature:FinancialDimensions";
11
+ };
12
+
13
+ declare const AXMFinancialCoreMenuKeys: {
14
+ readonly Root: "financial-core";
15
+ readonly Currencies: "financial-core.currencies";
16
+ readonly ExchangeRates: "financial-core.exchange-rates";
17
+ readonly Divider1: "financial-core.divider-1";
18
+ readonly TaxClasses: "financial-core.tax-classes";
19
+ readonly TaxRegions: "financial-core.tax-regions";
20
+ readonly TaxRules: "financial-core.tax-rules";
21
+ readonly Divider2: "financial-core.divider-2";
22
+ readonly PaymentTerms: "financial-core.payment-terms";
23
+ readonly PaymentMethods: "financial-core.payment-methods";
24
+ readonly Divider3: "financial-core.divider-3";
25
+ readonly FiscalCalendars: "financial-core.fiscal-calendars";
26
+ readonly Divider4: "financial-core.divider-4";
27
+ readonly FinancialDimensions: "financial-core.financial-dimensions";
28
+ };
29
+
30
+ /**
31
+ * Finance capabilities used by this module.
32
+ * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).
33
+ */
34
+ declare const AXPFinancePermissionKeys: {
35
+ readonly Access: "Finance:Permission:Access";
36
+ readonly MaintainFinance: "Finance:Permission:MaintainFinance";
37
+ readonly Setup: "Finance:Permission:Setup";
38
+ };
39
+ /**
40
+ * @deprecated Prefer {@link AXPFinancePermissionKeys}.
41
+ * Legacy nested shape kept so existing imports compile during migration.
42
+ */
43
+ declare const AXMFinancialCorePermissionKeys: {
44
+ readonly FinancialCore: {
45
+ readonly Currency: {
46
+ readonly Management: "Finance:Permission:MaintainFinance";
47
+ };
48
+ readonly ExchangeRate: {
49
+ readonly Management: "Finance:Permission:MaintainFinance";
50
+ };
51
+ readonly TaxClass: {
52
+ readonly Management: "Finance:Permission:MaintainFinance";
53
+ };
54
+ readonly TaxRegion: {
55
+ readonly Management: "Finance:Permission:MaintainFinance";
56
+ };
57
+ readonly TaxRule: {
58
+ readonly Management: "Finance:Permission:MaintainFinance";
59
+ };
60
+ readonly PaymentTerm: {
61
+ readonly Management: "Finance:Permission:MaintainFinance";
62
+ };
63
+ readonly PaymentMethod: {
64
+ readonly Management: "Finance:Permission:MaintainFinance";
65
+ };
66
+ readonly FiscalCalendar: {
67
+ readonly Management: "Finance:Permission:Setup";
68
+ readonly View: "Finance:Permission:Setup";
69
+ readonly Create: "Finance:Permission:Setup";
70
+ readonly Update: "Finance:Permission:Setup";
71
+ readonly Delete: "Finance:Permission:Setup";
72
+ };
73
+ readonly FinancialDimension: {
74
+ readonly Management: "Finance:Permission:MaintainFinance";
75
+ };
76
+ };
77
+ };
78
+
79
+ declare const RootConfig: {
80
+ readonly config: {
81
+ i18n: string;
82
+ module: string;
83
+ };
84
+ readonly module: {
85
+ readonly name: string;
86
+ readonly title: `@${string}:module.title`;
87
+ readonly icon: "fa-light fa-sack-dollar";
88
+ };
89
+ readonly entities: {
90
+ readonly currency: {
91
+ readonly name: "Currency";
92
+ readonly title: `@${string}:currencies.entities.currency.title`;
93
+ readonly titlePlural: `@${string}:currencies.entities.currency.plural`;
94
+ readonly icon: "fa-light fa-coins";
95
+ };
96
+ readonly exchangeRate: {
97
+ readonly name: "ExchangeRate";
98
+ readonly title: `@${string}:exchange-rates.entities.exchange-rate.title`;
99
+ readonly titlePlural: `@${string}:exchange-rates.entities.exchange-rate.plural`;
100
+ readonly icon: "fa-light fa-arrows-rotate";
101
+ };
102
+ readonly taxClass: {
103
+ readonly name: "TaxClass";
104
+ readonly title: `@${string}:taxation.entities.tax-class.title`;
105
+ readonly titlePlural: `@${string}:taxation.entities.tax-class.plural`;
106
+ readonly icon: "fa-light fa-scale-balanced";
107
+ };
108
+ readonly taxRegion: {
109
+ readonly name: "TaxRegion";
110
+ readonly title: `@${string}:taxation.entities.tax-region.title`;
111
+ readonly titlePlural: `@${string}:taxation.entities.tax-region.plural`;
112
+ readonly icon: "fa-light fa-map-location-dot";
113
+ };
114
+ readonly taxRule: {
115
+ readonly name: "TaxRule";
116
+ readonly title: `@${string}:taxation.entities.tax-rule.title`;
117
+ readonly titlePlural: `@${string}:taxation.entities.tax-rule.plural`;
118
+ readonly icon: "fa-light fa-scroll";
119
+ };
120
+ readonly paymentTerm: {
121
+ readonly name: "PaymentTerm";
122
+ readonly title: `@${string}:payments.entities.payment-term.title`;
123
+ readonly titlePlural: `@${string}:payments.entities.payment-term.plural`;
124
+ readonly icon: "fa-light fa-calendar-check";
125
+ };
126
+ readonly paymentMethod: {
127
+ readonly name: "PaymentMethod";
128
+ readonly title: `@${string}:payments.entities.payment-method.title`;
129
+ readonly titlePlural: `@${string}:payments.entities.payment-method.plural`;
130
+ readonly icon: "fa-light fa-credit-card";
131
+ };
132
+ readonly fiscalCalendar: {
133
+ readonly name: "FiscalCalendar";
134
+ readonly title: `@${string}:calendars.entities.fiscal-calendar.title`;
135
+ readonly titlePlural: `@${string}:calendars.entities.fiscal-calendar.plural`;
136
+ readonly icon: "fa-light fa-calendar-days";
137
+ };
138
+ readonly financialDimension: {
139
+ readonly name: "FinancialDimension";
140
+ readonly title: `@${string}:dimensions.entities.financial-dimension.title`;
141
+ readonly titlePlural: `@${string}:dimensions.entities.financial-dimension.plural`;
142
+ readonly icon: "fa-light fa-layer-group";
143
+ };
144
+ };
145
+ };
146
+
147
+ interface AXMFinancialCoreCurrencyEntityModel extends AXPEntityModel<string> {
148
+ code: string;
149
+ title: AXPMultiLanguageString;
150
+ symbol: string;
151
+ isoNumber?: string | null;
152
+ decimalPlaces: number;
153
+ thousandSeparator?: string | null;
154
+ decimalSeparator?: string | null;
155
+ formatPattern?: string | null;
156
+ isDefault?: boolean;
157
+ isDisabled?: boolean;
158
+ }
159
+
160
+ interface AXMFinancialCoreExchangeRateEntityModel extends AXPEntityModel<string> {
161
+ pairCode: string;
162
+ title: AXPMultiLanguageString;
163
+ baseCurrencyId: string;
164
+ quoteCurrencyId: string;
165
+ rate: number;
166
+ inverseRate?: number;
167
+ method?: string;
168
+ source?: string;
169
+ status?: string;
170
+ effectiveFrom?: Date;
171
+ effectiveTo?: Date | null;
172
+ baseCurrency?: {
173
+ id: string;
174
+ title: AXPMultiLanguageString;
175
+ symbol: string;
176
+ };
177
+ quoteCurrency?: {
178
+ id: string;
179
+ title: AXPMultiLanguageString;
180
+ symbol: string;
181
+ };
182
+ }
183
+
184
+ interface AXMFinancialCoreFinancialDimensionEntityModel extends AXPEntityModel<string> {
185
+ code: string;
186
+ title: AXPMultiLanguageString;
187
+ description?: AXPMultiLanguageString | null;
188
+ dimensionType: string;
189
+ parentId?: string | null;
190
+ parent?: {
191
+ id: string;
192
+ title: AXPMultiLanguageString;
193
+ };
194
+ hierarchyPath?: string;
195
+ displayOrder?: number;
196
+ isLeaf?: boolean;
197
+ isArchived?: boolean;
198
+ }
199
+
200
+ interface AXMFinancialCoreFiscalCalendarEntityModel extends AXPEntityModel<string> {
201
+ code: string;
202
+ title: AXPMultiLanguageString;
203
+ description?: AXPMultiLanguageString | null;
204
+ fiscalYear: number;
205
+ startDate: Date;
206
+ endDate: Date;
207
+ templateCalendarId?: string | null;
208
+ closingPeriods?: number;
209
+ status?: string;
210
+ isLocked?: boolean;
211
+ isDefault?: boolean;
212
+ }
213
+
214
+ interface AXMFinancialCorePaymentMethodEntityModel extends AXPEntityModel<string> {
215
+ code: string;
216
+ title: AXPMultiLanguageString;
217
+ description?: AXPMultiLanguageString | null;
218
+ type: string;
219
+ provider?: string | null;
220
+ integrationType?: string | null;
221
+ feePercent?: number;
222
+ settlementTimeDays?: number;
223
+ supportsRefunds?: boolean;
224
+ supportsRecurring?: boolean;
225
+ instructions?: string | null;
226
+ isDisabled?: boolean;
227
+ }
228
+
229
+ interface AXMFinancialCorePaymentTermEntityModel extends AXPEntityModel<string> {
230
+ code: string;
231
+ title: AXPMultiLanguageString;
232
+ description?: AXPMultiLanguageString | null;
233
+ netDueDays: number;
234
+ discountPercent?: number;
235
+ discountDays?: number;
236
+ gracePeriodDays?: number;
237
+ autoRenew?: boolean;
238
+ isDisabled?: boolean;
239
+ }
240
+
241
+ interface AXMFinancialCoreTaxClassEntityModel extends AXPEntityModel<string> {
242
+ code: string;
243
+ title: AXPMultiLanguageString;
244
+ description?: AXPMultiLanguageString | null;
245
+ type: string;
246
+ defaultRate: number;
247
+ isCompound?: boolean;
248
+ priority?: number;
249
+ isDisabled?: boolean;
250
+ }
251
+
252
+ interface AXMFinancialCoreTaxRegionEntityModel extends AXPEntityModel<string> {
253
+ code: string;
254
+ title: AXPMultiLanguageString;
255
+ countryCode: string;
256
+ regionCode?: string | null;
257
+ defaultCurrencyId?: string | null;
258
+ currency?: {
259
+ id: string;
260
+ title: AXPMultiLanguageString;
261
+ };
262
+ taxAuthorityName?: string | null;
263
+ isDefault?: boolean;
264
+ isDisabled?: boolean;
265
+ }
266
+
267
+ interface AXMFinancialCoreTaxRuleEntityModel extends AXPEntityModel<string> {
268
+ code: string;
269
+ title: AXPMultiLanguageString;
270
+ taxRegionId: string;
271
+ taxClassId: string;
272
+ taxRegion?: {
273
+ id: string;
274
+ title: AXPMultiLanguageString;
275
+ };
276
+ taxClass?: {
277
+ id: string;
278
+ title: AXPMultiLanguageString;
279
+ };
280
+ priority?: number;
281
+ calculationMethod: string;
282
+ rate: number;
283
+ thresholdAmount?: number;
284
+ conditionSummary?: string | null;
285
+ effectiveFrom?: Date;
286
+ effectiveTo?: Date | null;
287
+ isDisabled?: boolean;
288
+ }
289
+
290
+ export { AXMFinancialCoreFeatureKeys, AXMFinancialCoreMenuKeys, AXMFinancialCorePermissionKeys, AXPFinancePermissionKeys, RootConfig };
291
+ export type { AXMFinancialCoreCurrencyEntityModel, AXMFinancialCoreExchangeRateEntityModel, AXMFinancialCoreFinancialDimensionEntityModel, AXMFinancialCoreFiscalCalendarEntityModel, AXMFinancialCorePaymentMethodEntityModel, AXMFinancialCorePaymentTermEntityModel, AXMFinancialCoreTaxClassEntityModel, AXMFinancialCoreTaxRegionEntityModel, AXMFinancialCoreTaxRuleEntityModel };
@@ -0,0 +1,29 @@
1
+ import * as i0 from '@angular/core';
2
+ import { AXPMenuProvider, AXPMenuProviderContext, AXPSearchCommandProvider, AXPSearchResult } from '@acorex-platform/framework-client/common';
3
+ import { AXPPermissionDefinitionProvider, AXPPermissionDefinitionProviderContext } from '@acorex-platform/framework-client/auth';
4
+
5
+ declare class AXMFinancialCoreModule {
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMFinancialCoreModule, never>;
7
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXMFinancialCoreModule, never, never, never>;
8
+ static ɵinj: i0.ɵɵInjectorDeclaration<AXMFinancialCoreModule>;
9
+ }
10
+
11
+ declare class AXMFinancialCoreMenuProvider implements AXPMenuProvider {
12
+ private readonly entityService;
13
+ provide(context: AXPMenuProviderContext): Promise<void>;
14
+ }
15
+
16
+ /**
17
+ * Registers financial-core capabilities into the shared Finance group.
18
+ */
19
+ declare class AXMFinancialCorePermissionDefinitionProvider implements AXPPermissionDefinitionProvider {
20
+ define(context: AXPPermissionDefinitionProviderContext): Promise<void>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXMFinancialCorePermissionDefinitionProvider, never>;
22
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXMFinancialCorePermissionDefinitionProvider>;
23
+ }
24
+
25
+ declare class AXMFinancialCoreSearchCommandProvider extends AXPSearchCommandProvider {
26
+ commands: AXPSearchResult[];
27
+ }
28
+
29
+ export { AXMFinancialCoreMenuProvider, AXMFinancialCoreModule, AXMFinancialCorePermissionDefinitionProvider, AXMFinancialCoreSearchCommandProvider };