@acorex-platform/module-asset-management-client 0.0.20

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,78 @@
1
+ import { AXPStatusProvider } from '@acorex-platform/framework-shared/core';
2
+ import { AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY, AXMAssetLifecycleStatus } from '@acorex-platform/module-asset-management-client/contracts';
3
+
4
+ class AXMAssetManagementAssetLifecycleStatusProvider extends AXPStatusProvider {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.key = AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY;
8
+ this.isPrimary = false;
9
+ this.statuses = [
10
+ {
11
+ name: AXMAssetLifecycleStatus.Created,
12
+ title: '@asset-management:assets.lifecycle-statuses.created',
13
+ icon: 'fa-light fa-circle-plus',
14
+ color: 'secondary',
15
+ order: 1,
16
+ isInitial: true,
17
+ isFinal: false,
18
+ generateView: true,
19
+ },
20
+ {
21
+ name: AXMAssetLifecycleStatus.Active,
22
+ title: '@asset-management:assets.lifecycle-statuses.active',
23
+ icon: 'fa-light fa-circle-check',
24
+ color: 'success',
25
+ order: 2,
26
+ isInitial: false,
27
+ isFinal: false,
28
+ generateView: true,
29
+ },
30
+ {
31
+ name: AXMAssetLifecycleStatus.Retired,
32
+ title: '@asset-management:assets.lifecycle-statuses.retired',
33
+ icon: 'fa-light fa-ban',
34
+ color: 'neutral',
35
+ order: 3,
36
+ isInitial: false,
37
+ isFinal: false,
38
+ generateView: true,
39
+ },
40
+ {
41
+ name: AXMAssetLifecycleStatus.Disposed,
42
+ title: '@asset-management:assets.lifecycle-statuses.disposed',
43
+ icon: 'fa-light fa-trash-can',
44
+ color: 'neutral',
45
+ order: 4,
46
+ isInitial: false,
47
+ isFinal: true,
48
+ generateView: true,
49
+ },
50
+ ];
51
+ this.transitions = [
52
+ {
53
+ from: AXMAssetLifecycleStatus.Created,
54
+ to: AXMAssetLifecycleStatus.Active,
55
+ title: '@asset-management:assets.lifecycle-transitions.activate',
56
+ },
57
+ {
58
+ from: AXMAssetLifecycleStatus.Active,
59
+ to: AXMAssetLifecycleStatus.Retired,
60
+ title: '@asset-management:assets.lifecycle-transitions.retire',
61
+ },
62
+ {
63
+ from: AXMAssetLifecycleStatus.Retired,
64
+ to: AXMAssetLifecycleStatus.Active,
65
+ title: '@asset-management:assets.lifecycle-transitions.reactivate',
66
+ },
67
+ {
68
+ from: AXMAssetLifecycleStatus.Retired,
69
+ to: AXMAssetLifecycleStatus.Disposed,
70
+ title: '@asset-management:assets.lifecycle-transitions.dispose',
71
+ },
72
+ ];
73
+ this.defaultStatus = AXMAssetLifecycleStatus.Created;
74
+ }
75
+ }
76
+
77
+ export { AXMAssetManagementAssetLifecycleStatusProvider };
78
+ //# sourceMappingURL=acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/asset-lifecycle.provider.ts"],"sourcesContent":["import { AXPStatusProvider, AXPStatusTransition } from '@acorex-platform/framework-shared/core';\nimport { AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY, AXMAssetLifecycleStatus } from '@acorex-platform/module-asset-management-client/contracts';\nimport { AXStyleColorType } from '@acorex/cdk/common';\n\nexport class AXMAssetManagementAssetLifecycleStatusProvider extends AXPStatusProvider {\n readonly key = AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY;\n\n readonly isPrimary = false;\n\n readonly statuses = [\n {\n name: AXMAssetLifecycleStatus.Created,\n title: '@asset-management:assets.lifecycle-statuses.created',\n icon: 'fa-light fa-circle-plus',\n color: 'secondary' as AXStyleColorType,\n order: 1,\n isInitial: true,\n isFinal: false,\n generateView: true,\n },\n {\n name: AXMAssetLifecycleStatus.Active,\n title: '@asset-management:assets.lifecycle-statuses.active',\n icon: 'fa-light fa-circle-check',\n color: 'success' as AXStyleColorType,\n order: 2,\n isInitial: false,\n isFinal: false,\n generateView: true,\n },\n {\n name: AXMAssetLifecycleStatus.Retired,\n title: '@asset-management:assets.lifecycle-statuses.retired',\n icon: 'fa-light fa-ban',\n color: 'neutral' as AXStyleColorType,\n order: 3,\n isInitial: false,\n isFinal: false,\n generateView: true,\n },\n {\n name: AXMAssetLifecycleStatus.Disposed,\n title: '@asset-management:assets.lifecycle-statuses.disposed',\n icon: 'fa-light fa-trash-can',\n color: 'neutral' as AXStyleColorType,\n order: 4,\n isInitial: false,\n isFinal: true,\n generateView: true,\n },\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n {\n from: AXMAssetLifecycleStatus.Created,\n to: AXMAssetLifecycleStatus.Active,\n title: '@asset-management:assets.lifecycle-transitions.activate',\n },\n {\n from: AXMAssetLifecycleStatus.Active,\n to: AXMAssetLifecycleStatus.Retired,\n title: '@asset-management:assets.lifecycle-transitions.retire',\n },\n {\n from: AXMAssetLifecycleStatus.Retired,\n to: AXMAssetLifecycleStatus.Active,\n title: '@asset-management:assets.lifecycle-transitions.reactivate',\n },\n {\n from: AXMAssetLifecycleStatus.Retired,\n to: AXMAssetLifecycleStatus.Disposed,\n title: '@asset-management:assets.lifecycle-transitions.dispose',\n },\n ];\n\n readonly defaultStatus = AXMAssetLifecycleStatus.Created;\n}\n"],"names":[],"mappings":";;;AAIM,MAAO,8CAA+C,SAAQ,iBAAiB,CAAA;AAArF,IAAA,WAAA,GAAA;;QACW,IAAA,CAAA,GAAG,GAAG,yCAAyC;QAE/C,IAAA,CAAA,SAAS,GAAG,KAAK;AAEjB,QAAA,IAAA,CAAA,QAAQ,GAAG;AAClB,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;AACrC,gBAAA,KAAK,EAAE,qDAAqD;AAC5D,gBAAA,IAAI,EAAE,yBAAyB;AAC/B,gBAAA,KAAK,EAAE,WAA+B;AACtC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,MAAM;AACpC,gBAAA,KAAK,EAAE,oDAAoD;AAC3D,gBAAA,IAAI,EAAE,0BAA0B;AAChC,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;AACrC,gBAAA,KAAK,EAAE,qDAAqD;AAC5D,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,QAAQ;AACtC,gBAAA,KAAK,EAAE,sDAAsD;AAC7D,gBAAA,IAAI,EAAE,uBAAuB;AAC7B,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,YAAY,EAAE,IAAI;AACnB,aAAA;SACF;AAEQ,QAAA,IAAA,CAAA,WAAW,GAA0B;AAC5C,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;gBACrC,EAAE,EAAE,uBAAuB,CAAC,MAAM;AAClC,gBAAA,KAAK,EAAE,yDAAyD;AACjE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,MAAM;gBACpC,EAAE,EAAE,uBAAuB,CAAC,OAAO;AACnC,gBAAA,KAAK,EAAE,uDAAuD;AAC/D,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;gBACrC,EAAE,EAAE,uBAAuB,CAAC,MAAM;AAClC,gBAAA,KAAK,EAAE,2DAA2D;AACnE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,uBAAuB,CAAC,OAAO;gBACrC,EAAE,EAAE,uBAAuB,CAAC,QAAQ;AACpC,gBAAA,KAAK,EAAE,wDAAwD;AAChE,aAAA;SACF;AAEQ,QAAA,IAAA,CAAA,aAAa,GAAG,uBAAuB,CAAC,OAAO;IAC1D;AAAC;;;;"}
@@ -0,0 +1,109 @@
1
+ import { AXPStatusProvider } from '@acorex-platform/framework-shared/core';
2
+ import { AXMAssetRentalHistoryStatus } from '@acorex-platform/module-asset-management-client/contracts';
3
+
4
+ //#region ---- Imports ----
5
+ //#endregion
6
+ //#region ---- Provider ----
7
+ /**
8
+ * Status lifecycle for AssetManagement.AssetRentalHistory (rental agreement rows).
9
+ */
10
+ class AXMAssetManagementAssetRentalHistoryStatusProvider extends AXPStatusProvider {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.key = 'asset-management.status.asset-rental-history';
14
+ this.statuses = [
15
+ {
16
+ name: AXMAssetRentalHistoryStatus.Draft,
17
+ title: '@asset-management:common.status.draft',
18
+ icon: 'fa-light fa-file-pen',
19
+ color: 'secondary',
20
+ order: 1,
21
+ isInitial: true,
22
+ isFinal: false,
23
+ generateView: false,
24
+ },
25
+ {
26
+ name: AXMAssetRentalHistoryStatus.Active,
27
+ title: '@asset-management:common.status.active',
28
+ icon: 'fa-light fa-key',
29
+ color: 'success',
30
+ order: 2,
31
+ isInitial: false,
32
+ isFinal: false,
33
+ generateView: false,
34
+ },
35
+ {
36
+ name: AXMAssetRentalHistoryStatus.Returned,
37
+ title: '@asset-management:common.status.returned',
38
+ icon: 'fa-light fa-rotate-left',
39
+ color: 'info',
40
+ order: 3,
41
+ isInitial: false,
42
+ isFinal: true,
43
+ generateView: false,
44
+ },
45
+ {
46
+ name: AXMAssetRentalHistoryStatus.Overdue,
47
+ title: '@asset-management:common.status.overdue',
48
+ icon: 'fa-light fa-clock',
49
+ color: 'warning',
50
+ order: 4,
51
+ isInitial: false,
52
+ isFinal: false,
53
+ generateView: false,
54
+ },
55
+ {
56
+ name: AXMAssetRentalHistoryStatus.Cancelled,
57
+ title: '@asset-management:common.status.cancelled',
58
+ icon: 'fa-light fa-ban',
59
+ color: 'neutral',
60
+ order: 5,
61
+ isInitial: false,
62
+ isFinal: true,
63
+ generateView: false,
64
+ },
65
+ ];
66
+ this.transitions = [
67
+ {
68
+ from: AXMAssetRentalHistoryStatus.Draft,
69
+ to: AXMAssetRentalHistoryStatus.Active,
70
+ title: '@asset-management:assetRentalHistories.transitions.activate',
71
+ },
72
+ {
73
+ from: AXMAssetRentalHistoryStatus.Draft,
74
+ to: AXMAssetRentalHistoryStatus.Cancelled,
75
+ title: '@asset-management:assetRentalHistories.transitions.cancel-from-draft',
76
+ },
77
+ {
78
+ from: AXMAssetRentalHistoryStatus.Active,
79
+ to: AXMAssetRentalHistoryStatus.Returned,
80
+ title: '@asset-management:assetRentalHistories.transitions.return',
81
+ },
82
+ {
83
+ from: AXMAssetRentalHistoryStatus.Active,
84
+ to: AXMAssetRentalHistoryStatus.Overdue,
85
+ title: '@asset-management:assetRentalHistories.transitions.mark-overdue',
86
+ },
87
+ {
88
+ from: AXMAssetRentalHistoryStatus.Active,
89
+ to: AXMAssetRentalHistoryStatus.Cancelled,
90
+ title: '@asset-management:assetRentalHistories.transitions.cancel-rental',
91
+ },
92
+ {
93
+ from: AXMAssetRentalHistoryStatus.Overdue,
94
+ to: AXMAssetRentalHistoryStatus.Returned,
95
+ title: '@asset-management:assetRentalHistories.transitions.return',
96
+ },
97
+ {
98
+ from: AXMAssetRentalHistoryStatus.Overdue,
99
+ to: AXMAssetRentalHistoryStatus.Cancelled,
100
+ title: '@asset-management:assetRentalHistories.transitions.cancel-rental',
101
+ },
102
+ ];
103
+ this.defaultStatus = AXMAssetRentalHistoryStatus.Draft;
104
+ }
105
+ }
106
+ //#endregion
107
+
108
+ export { AXMAssetManagementAssetRentalHistoryStatusProvider };
109
+ //# sourceMappingURL=acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/asset-rental-history-status.provider.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXStyleColorType } from '@acorex/cdk/common';\nimport { AXPStatusProvider, AXPStatusTransition } from '@acorex-platform/framework-shared/core';\n\nimport { AXMAssetRentalHistoryStatus } from '@acorex-platform/module-asset-management-client/contracts';\n\n//#endregion\n\n//#region ---- Provider ----\n\n/**\n * Status lifecycle for AssetManagement.AssetRentalHistory (rental agreement rows).\n */\nexport class AXMAssetManagementAssetRentalHistoryStatusProvider extends AXPStatusProvider {\n readonly key = 'asset-management.status.asset-rental-history';\n\n readonly statuses = [\n {\n name: AXMAssetRentalHistoryStatus.Draft,\n title: '@asset-management:common.status.draft',\n icon: 'fa-light fa-file-pen',\n color: 'secondary' as AXStyleColorType,\n order: 1,\n isInitial: true,\n isFinal: false,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Active,\n title: '@asset-management:common.status.active',\n icon: 'fa-light fa-key',\n color: 'success' as AXStyleColorType,\n order: 2,\n isInitial: false,\n isFinal: false,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Returned,\n title: '@asset-management:common.status.returned',\n icon: 'fa-light fa-rotate-left',\n color: 'info' as AXStyleColorType,\n order: 3,\n isInitial: false,\n isFinal: true,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Overdue,\n title: '@asset-management:common.status.overdue',\n icon: 'fa-light fa-clock',\n color: 'warning' as AXStyleColorType,\n order: 4,\n isInitial: false,\n isFinal: false,\n generateView: false,\n },\n {\n name: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:common.status.cancelled',\n icon: 'fa-light fa-ban',\n color: 'neutral' as AXStyleColorType,\n order: 5,\n isInitial: false,\n isFinal: true,\n generateView: false,\n },\n ];\n\n readonly transitions: AXPStatusTransition[] = [\n {\n from: AXMAssetRentalHistoryStatus.Draft,\n to: AXMAssetRentalHistoryStatus.Active,\n title: '@asset-management:assetRentalHistories.transitions.activate',\n },\n {\n from: AXMAssetRentalHistoryStatus.Draft,\n to: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:assetRentalHistories.transitions.cancel-from-draft',\n },\n {\n from: AXMAssetRentalHistoryStatus.Active,\n to: AXMAssetRentalHistoryStatus.Returned,\n title: '@asset-management:assetRentalHistories.transitions.return',\n },\n {\n from: AXMAssetRentalHistoryStatus.Active,\n to: AXMAssetRentalHistoryStatus.Overdue,\n title: '@asset-management:assetRentalHistories.transitions.mark-overdue',\n },\n {\n from: AXMAssetRentalHistoryStatus.Active,\n to: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:assetRentalHistories.transitions.cancel-rental',\n },\n {\n from: AXMAssetRentalHistoryStatus.Overdue,\n to: AXMAssetRentalHistoryStatus.Returned,\n title: '@asset-management:assetRentalHistories.transitions.return',\n },\n {\n from: AXMAssetRentalHistoryStatus.Overdue,\n to: AXMAssetRentalHistoryStatus.Cancelled,\n title: '@asset-management:assetRentalHistories.transitions.cancel-rental',\n },\n ];\n\n readonly defaultStatus = AXMAssetRentalHistoryStatus.Draft;\n}\n\n//#endregion\n"],"names":[],"mappings":";;;AAAA;AAOA;AAEA;AAEA;;AAEG;AACG,MAAO,kDAAmD,SAAQ,iBAAiB,CAAA;AAAzF,IAAA,WAAA,GAAA;;QACW,IAAA,CAAA,GAAG,GAAG,8CAA8C;AAEpD,QAAA,IAAA,CAAA,QAAQ,GAAG;AAClB,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,KAAK;AACvC,gBAAA,KAAK,EAAE,uCAAuC;AAC9C,gBAAA,IAAI,EAAE,sBAAsB;AAC5B,gBAAA,KAAK,EAAE,WAA+B;AACtC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,IAAI;AACf,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,MAAM;AACxC,gBAAA,KAAK,EAAE,wCAAwC;AAC/C,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,QAAQ;AAC1C,gBAAA,KAAK,EAAE,0CAA0C;AACjD,gBAAA,IAAI,EAAE,yBAAyB;AAC/B,gBAAA,KAAK,EAAE,MAA0B;AACjC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,OAAO;AACzC,gBAAA,KAAK,EAAE,yCAAyC;AAChD,gBAAA,IAAI,EAAE,mBAAmB;AACzB,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,SAAS;AAC3C,gBAAA,KAAK,EAAE,2CAA2C;AAClD,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,KAAK,EAAE,SAA6B;AACpC,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,SAAS,EAAE,KAAK;AAChB,gBAAA,OAAO,EAAE,IAAI;AACb,gBAAA,YAAY,EAAE,KAAK;AACpB,aAAA;SACF;AAEQ,QAAA,IAAA,CAAA,WAAW,GAA0B;AAC5C,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,KAAK;gBACvC,EAAE,EAAE,2BAA2B,CAAC,MAAM;AACtC,gBAAA,KAAK,EAAE,6DAA6D;AACrE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,KAAK;gBACvC,EAAE,EAAE,2BAA2B,CAAC,SAAS;AACzC,gBAAA,KAAK,EAAE,sEAAsE;AAC9E,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,MAAM;gBACxC,EAAE,EAAE,2BAA2B,CAAC,QAAQ;AACxC,gBAAA,KAAK,EAAE,2DAA2D;AACnE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,MAAM;gBACxC,EAAE,EAAE,2BAA2B,CAAC,OAAO;AACvC,gBAAA,KAAK,EAAE,iEAAiE;AACzE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,MAAM;gBACxC,EAAE,EAAE,2BAA2B,CAAC,SAAS;AACzC,gBAAA,KAAK,EAAE,kEAAkE;AAC1E,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,OAAO;gBACzC,EAAE,EAAE,2BAA2B,CAAC,QAAQ;AACxC,gBAAA,KAAK,EAAE,2DAA2D;AACnE,aAAA;AACD,YAAA;gBACE,IAAI,EAAE,2BAA2B,CAAC,OAAO;gBACzC,EAAE,EAAE,2BAA2B,CAAC,SAAS;AACzC,gBAAA,KAAK,EAAE,kEAAkE;AAC1E,aAAA;SACF;AAEQ,QAAA,IAAA,CAAA,aAAa,GAAG,2BAA2B,CAAC,KAAK;IAC5D;AAAC;AAED;;;;"}
@@ -0,0 +1,257 @@
1
+ import { AXPSystemActionType } from '@acorex-platform/framework-shared/core';
2
+ import { AXPEntityCommandScope, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';
3
+
4
+ /** Asset booking catalog scope for questionnaires, question bank items, and workflow definitions. */
5
+ const ASSET_CATALOG_SCOPE_BOOKING = 'asset-management.booking';
6
+
7
+ //#region ---- Command keys ----
8
+ const AXMAssetManagementCommandKeys = {
9
+ AssetRentalHistory: {
10
+ RentFrom: 'AssetManagement.AssetRentalHistory:RentFrom',
11
+ RentTo: 'AssetManagement.AssetRentalHistory:RentTo',
12
+ },
13
+ WorkflowActivity: {
14
+ RecalculateOperationalStatus: 'workflow-activity:recalculate-asset-operational-status',
15
+ },
16
+ };
17
+ //#endregion
18
+
19
+ const AXMAssetManagementFeatureKeys = {
20
+ AssetManagement: 'AssetManagement:Feature:Management',
21
+ AdvancedMaintenance: 'AssetManagement:Feature:Advanced.Maintenance',
22
+ MaintenanceScheduling: 'AssetManagement:Feature:Maintenance.Scheduling',
23
+ InspectionWorkflow: 'AssetManagement:Feature:Inspection.Workflow',
24
+ };
25
+
26
+ const AXMAssetManagementMenuKeys = {
27
+ Root: 'AssetManagement:Menu',
28
+ MainPlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:MainPlanEquipment:AssetsMaintenanceDivider',
29
+ PlanEquipmentAssets: 'AssetManagement:Menu:PlantEquipment:Assets',
30
+ PlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:PlantEquipment:AssetsMaintenanceDivider',
31
+ Assets: 'AssetManagement:Menu:Assets',
32
+ AssetSystems: 'AssetManagement:Menu:AssetSystems',
33
+ AssetTypes: 'AssetManagement:Menu:AssetTypes',
34
+ AssetSystemTypes: 'AssetManagement:Menu:AssetSystemTypes',
35
+ AssetTypeSections: 'AssetManagement:Menu:AssetTypeSections',
36
+ };
37
+
38
+ /**
39
+ * Assets & Maintenance capabilities used by this module.
40
+ * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).
41
+ */
42
+ const AXPAssetsMaintenancePermissionKeys = {
43
+ Access: 'AssetsMaintenance:Permission:Access',
44
+ MaintainAssets: 'AssetsMaintenance:Permission:MaintainAssets',
45
+ MaintainMaintenance: 'AssetsMaintenance:Permission:MaintainMaintenance',
46
+ Setup: 'AssetsMaintenance:Permission:Setup',
47
+ };
48
+ /**
49
+ * @deprecated Prefer {@link AXPAssetsMaintenancePermissionKeys}.
50
+ * Legacy nested shape kept so existing imports compile during migration.
51
+ */
52
+ const AXMAssetManagementPermissionKeys = {
53
+ AssetManagement: {
54
+ Management: AXPAssetsMaintenancePermissionKeys.Access,
55
+ Asset: {
56
+ Management: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
57
+ View: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
58
+ Create: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
59
+ Update: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
60
+ Delete: AXPAssetsMaintenancePermissionKeys.MaintainAssets,
61
+ },
62
+ },
63
+ };
64
+
65
+ /** Registry key for the asset type Components custom page tab. */
66
+ const ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY = 'asset-type-components-page';
67
+
68
+ /** Status provider key for `lifecycleStatusId` on AssetManagement.Asset (lifecycle status). */
69
+ const AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY = 'asset-management.status.asset-lifecycle';
70
+
71
+ /** Status provider key for `statusId` on AssetManagement.Asset (operational status). */
72
+ const AXM_ASSET_STATUS_DEFINITION_KEY = 'asset-management.status.asset';
73
+
74
+ //#region ---- Rent list actions ----
75
+ /** Type-level create actions for rent-from / rent-to (list and asset related-entity). */
76
+ const assetRentalHistoryRentActions = [
77
+ {
78
+ name: 'rent-from',
79
+ title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-from.title',
80
+ command: {
81
+ name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentFrom,
82
+ options: {
83
+ process: {
84
+ redirect: false,
85
+ canCreateNewOne: true,
86
+ data: { assetId: '{{context.eval("id")}}' },
87
+ },
88
+ },
89
+ },
90
+ priority: 'primary',
91
+ type: AXPSystemActionType.Create,
92
+ scope: AXPEntityCommandScope.TypeLevel,
93
+ },
94
+ {
95
+ name: 'rent-to',
96
+ title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-to.title',
97
+ command: {
98
+ name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentTo,
99
+ options: {
100
+ process: {
101
+ redirect: false,
102
+ canCreateNewOne: true,
103
+ data: { assetId: '{{context.eval("id")}}' },
104
+ },
105
+ },
106
+ },
107
+ priority: 'primary',
108
+ type: AXPSystemActionType.Create,
109
+ scope: AXPEntityCommandScope.TypeLevel,
110
+ },
111
+ ...entityMasterCrudActions({ create: false, view: false }),
112
+ ];
113
+ //#endregion
114
+
115
+ //#region ---- Status enum ----
116
+ var AXMAssetRentalHistoryStatus;
117
+ (function (AXMAssetRentalHistoryStatus) {
118
+ AXMAssetRentalHistoryStatus["Draft"] = "draft";
119
+ AXMAssetRentalHistoryStatus["Active"] = "active";
120
+ AXMAssetRentalHistoryStatus["Returned"] = "returned";
121
+ AXMAssetRentalHistoryStatus["Overdue"] = "overdue";
122
+ AXMAssetRentalHistoryStatus["Cancelled"] = "cancelled";
123
+ })(AXMAssetRentalHistoryStatus || (AXMAssetRentalHistoryStatus = {}));
124
+ //#endregion
125
+
126
+ //#endregion
127
+
128
+ //#region ---- Status enum ----
129
+ var AXMAssetStatus;
130
+ (function (AXMAssetStatus) {
131
+ AXMAssetStatus["Available"] = "available";
132
+ AXMAssetStatus["Assigned"] = "assigned";
133
+ AXMAssetStatus["UnderMaintenanceInspection"] = "underMaintenanceInspection";
134
+ AXMAssetStatus["OutOfService"] = "outOfService";
135
+ AXMAssetStatus["Lost"] = "lost";
136
+ })(AXMAssetStatus || (AXMAssetStatus = {}));
137
+ //#endregion
138
+
139
+ //#region ---- Status enum ----
140
+ var AXMAssetLifecycleStatus;
141
+ (function (AXMAssetLifecycleStatus) {
142
+ AXMAssetLifecycleStatus["Created"] = "created";
143
+ AXMAssetLifecycleStatus["Active"] = "active";
144
+ AXMAssetLifecycleStatus["Retired"] = "retired";
145
+ AXMAssetLifecycleStatus["Disposed"] = "disposed";
146
+ })(AXMAssetLifecycleStatus || (AXMAssetLifecycleStatus = {}));
147
+
148
+ //#region ---- Root Configuration ----
149
+ const config = {
150
+ i18n: 'asset-management',
151
+ module: 'AssetManagement',
152
+ route: 'asset-management',
153
+ };
154
+ const RootConfig = {
155
+ config,
156
+ module: {
157
+ route: config.route,
158
+ name: config.module,
159
+ title: '@asset-management:module.title',
160
+ icon: 'fa-light fa-industry',
161
+ },
162
+ entities: {
163
+ assetRentalHistory: {
164
+ name: 'AssetRentalHistory',
165
+ source: `${config.module}.AssetRentalHistory`,
166
+ title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.title',
167
+ titlePlural: '@asset-management:assetRentalHistories.entities.assetRentalHistory.plural',
168
+ icon: 'fa-light fa-file-contract',
169
+ },
170
+ assetSystemAssignment: {
171
+ name: 'AssetSystemAssignment',
172
+ source: `${config.module}.AssetSystemAssignment`,
173
+ title: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.title',
174
+ titlePlural: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.plural',
175
+ icon: 'fa-light fa-link',
176
+ },
177
+ asset: {
178
+ name: 'Asset',
179
+ source: `${config.module}.Asset`,
180
+ title: '@asset-management:assets.entities.asset.title',
181
+ titlePlural: '@asset-management:assets.entities.asset.plural',
182
+ icon: 'fa-light fa-box',
183
+ },
184
+ assetType: {
185
+ name: 'AssetType',
186
+ source: `${config.module}.AssetType`,
187
+ title: '@asset-management:assetTypes.entities.assetType.title',
188
+ titlePlural: '@asset-management:assetTypes.entities.assetType.plural',
189
+ icon: 'fa-light fa-cubes',
190
+ },
191
+ assetTypeSection: {
192
+ name: 'AssetTypeSection',
193
+ source: `${config.module}.AssetTypeSection`,
194
+ title: '@asset-management:assetTypeSections.entities.assetTypeSection.title',
195
+ titlePlural: '@asset-management:assetTypeSections.entities.assetTypeSection.plural',
196
+ icon: 'fa-light fa-layer-group',
197
+ },
198
+ assetTypeSectionComponent: {
199
+ name: 'AssetTypeSectionComponent',
200
+ source: `${config.module}.AssetTypeSectionComponent`,
201
+ title: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.title',
202
+ titlePlural: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.plural',
203
+ icon: 'fa-light fa-puzzle-piece',
204
+ },
205
+ assetSystemType: {
206
+ name: 'AssetSystemType',
207
+ source: `${config.module}.AssetSystemType`,
208
+ title: '@asset-management:assetSystemTypes.entities.assetSystemType.title',
209
+ titlePlural: '@asset-management:assetSystemTypes.entities.assetSystemType.plural',
210
+ icon: 'fa-light fa-diagram-subtask',
211
+ },
212
+ assetSystem: {
213
+ name: 'AssetSystem',
214
+ source: `${config.module}.AssetSystem`,
215
+ title: 'Asset System',
216
+ titlePlural: 'Asset Systems',
217
+ icon: 'fa-light fa-diagram-project',
218
+ },
219
+ manualAssetCategory: {
220
+ name: 'ManualAssetCategory',
221
+ source: `${config.module}.ManualAssetCategory`,
222
+ title: '@asset-management:asset-categories.entities.asset-category.title',
223
+ titlePlural: '@asset-management:asset-categories.entities.asset-category.plural',
224
+ icon: 'fa-light fa-tags',
225
+ },
226
+ // inspection: {
227
+ // name: 'Inspection',
228
+ // source: `${config.module}.Inspection`,
229
+ // title: '@asset-management:inspections.entities.inspection.title',
230
+ // titlePlural: '@asset-management:inspections.entities.inspection.plural',
231
+ // icon: 'fa-light fa-clipboard-check',
232
+ // },
233
+ // assetStatus: {
234
+ // name: 'AssetStatus',
235
+ // source: `${config.module}.AssetStatus`,
236
+ // title: '@asset-management:asset-statuses.entities.asset-status.title',
237
+ // titlePlural: '@asset-management:asset-statuses.entities.asset-status.plural',
238
+ // icon: 'fa-light fa-signal',
239
+ // },
240
+ },
241
+ queries: {
242
+ reports: {
243
+ getAssetsByStatus: `${config.module}:Reports:GetAssetsByStatus`,
244
+ getRentalUtilization: `${config.module}:Reports:GetRentalUtilization`,
245
+ },
246
+ },
247
+ };
248
+ //#endregion
249
+
250
+ //#region ---- Contracts barrel ----
251
+
252
+ /**
253
+ * Generated bundle index. Do not edit.
254
+ */
255
+
256
+ export { ASSET_CATALOG_SCOPE_BOOKING, ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY, AXMAssetLifecycleStatus, AXMAssetManagementCommandKeys, AXMAssetManagementFeatureKeys, AXMAssetManagementMenuKeys, AXMAssetManagementPermissionKeys, AXMAssetRentalHistoryStatus, AXMAssetStatus, AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY, AXM_ASSET_STATUS_DEFINITION_KEY, AXPAssetsMaintenancePermissionKeys, RootConfig, assetRentalHistoryRentActions };
257
+ //# sourceMappingURL=acorex-platform-module-asset-management-client-contracts.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-asset-management-client-contracts.mjs","sources":["../../../../libs/modules/asset-management/contracts/src/catalog-scope.keys.ts","../../../../libs/modules/asset-management/contracts/src/commands.keys.ts","../../../../libs/modules/asset-management/contracts/src/features.keys.ts","../../../../libs/modules/asset-management/contracts/src/menu.keys.ts","../../../../libs/modules/asset-management/contracts/src/permission.keys.ts","../../../../libs/modules/asset-management/contracts/src/ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/asset-management/contracts/src/AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY.ts","../../../../libs/modules/asset-management/contracts/src/AXM_ASSET_STATUS_DEFINITION_KEY.ts","../../../../libs/modules/asset-management/contracts/src/asset-rental-history.actions.ts","../../../../libs/modules/asset-management/contracts/src/asset-rental-history.status.ts","../../../../libs/modules/asset-management/contracts/src/asset-type-section-builder.types.ts","../../../../libs/modules/asset-management/contracts/src/asset.status.ts","../../../../libs/modules/asset-management/contracts/src/asset.lifecycle.ts","../../../../libs/modules/asset-management/contracts/src/root-config.ts","../../../../libs/modules/asset-management/contracts/src/index.ts","../../../../libs/modules/asset-management/contracts/src/acorex-platform-module-asset-management-client-contracts.ts"],"sourcesContent":["/** Asset booking catalog scope for questionnaires, question bank items, and workflow definitions. */\nexport const ASSET_CATALOG_SCOPE_BOOKING = 'asset-management.booking';\n","//#region ---- Command keys ----\n\nexport const AXMAssetManagementCommandKeys = {\n AssetRentalHistory: {\n RentFrom: 'AssetManagement.AssetRentalHistory:RentFrom',\n RentTo: 'AssetManagement.AssetRentalHistory:RentTo',\n },\n WorkflowActivity: {\n RecalculateOperationalStatus: 'workflow-activity:recalculate-asset-operational-status',\n },\n} as const;\n\n//#endregion\n","export const AXMAssetManagementFeatureKeys = {\n AssetManagement: 'AssetManagement:Feature:Management',\n AdvancedMaintenance: 'AssetManagement:Feature:Advanced.Maintenance',\n MaintenanceScheduling: 'AssetManagement:Feature:Maintenance.Scheduling',\n InspectionWorkflow: 'AssetManagement:Feature:Inspection.Workflow',\n} as const;\n","export const AXMAssetManagementMenuKeys = {\n Root: 'AssetManagement:Menu',\n MainPlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:MainPlanEquipment:AssetsMaintenanceDivider',\n PlanEquipmentAssets: 'AssetManagement:Menu:PlantEquipment:Assets',\n PlanEquipmentAssetsMaintenanceDivider: 'AssetManagement:Menu:PlantEquipment:AssetsMaintenanceDivider',\n Assets: 'AssetManagement:Menu:Assets',\n AssetSystems: 'AssetManagement:Menu:AssetSystems',\n AssetTypes: 'AssetManagement:Menu:AssetTypes',\n AssetSystemTypes: 'AssetManagement:Menu:AssetSystemTypes',\n AssetTypeSections: 'AssetManagement:Menu:AssetTypeSections',\n} as const;\n","/**\n * Assets & Maintenance capabilities used by this module.\n * Domain capability keys for this module. Root groups live in `AXPCommonPermissionGroupKeys` (common contracts).\n */\nexport const AXPAssetsMaintenancePermissionKeys = {\n Access: 'AssetsMaintenance:Permission:Access',\n MaintainAssets: 'AssetsMaintenance:Permission:MaintainAssets',\n MaintainMaintenance: 'AssetsMaintenance:Permission:MaintainMaintenance',\n Setup: 'AssetsMaintenance:Permission:Setup',\n} as const;\n\n/**\n * @deprecated Prefer {@link AXPAssetsMaintenancePermissionKeys}.\n * Legacy nested shape kept so existing imports compile during migration.\n */\nexport const AXMAssetManagementPermissionKeys = {\n AssetManagement: {\n Management: AXPAssetsMaintenancePermissionKeys.Access,\n Asset: {\n Management: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n View: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n Create: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n Update: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n Delete: AXPAssetsMaintenancePermissionKeys.MaintainAssets,\n },\n },\n} as const;\n","/** Registry key for the asset type Components custom page tab. */\nexport const ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY = 'asset-type-components-page';\n","/** Status provider key for `lifecycleStatusId` on AssetManagement.Asset (lifecycle status). */\nexport const AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY = 'asset-management.status.asset-lifecycle';\n","/** Status provider key for `statusId` on AssetManagement.Asset (operational status). */\nexport const AXM_ASSET_STATUS_DEFINITION_KEY = 'asset-management.status.asset';\n","import { AXPSystemActionType } from '@acorex-platform/framework-shared/core';\nimport { AXPEntityAction, AXPEntityCommandScope, entityMasterCrudActions } from '@acorex-platform/framework-shared/entity';\n\nimport { AXMAssetManagementCommandKeys } from './commands.keys';\n\n//#region ---- Rent list actions ----\n\n/** Type-level create actions for rent-from / rent-to (list and asset related-entity). */\nexport const assetRentalHistoryRentActions: AXPEntityAction[] = [\n {\n name: 'rent-from',\n title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-from.title',\n command: {\n name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentFrom,\n options: {\n process: {\n redirect: false,\n canCreateNewOne: true,\n data: { assetId: '{{context.eval(\"id\")}}' },\n },\n },\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n },\n {\n name: 'rent-to',\n title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.actions.rent-to.title',\n command: {\n name: AXMAssetManagementCommandKeys.AssetRentalHistory.RentTo,\n options: {\n process: {\n redirect: false,\n canCreateNewOne: true,\n data: { assetId: '{{context.eval(\"id\")}}' },\n },\n },\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n },\n ...entityMasterCrudActions({ create: false, view: false }),\n];\n\n//#endregion\n","//#region ---- Status enum ----\n\nexport enum AXMAssetRentalHistoryStatus {\n Draft = 'draft',\n Active = 'active',\n Returned = 'returned',\n Overdue = 'overdue',\n Cancelled = 'cancelled',\n}\n\n//#endregion\n","import type { AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';\n\n//#region ---- Asset type section builder value types ----\n\nexport interface AXMAssetTypeSectionBuilderItemValue {\n id: string;\n assetTypeSectionId: string;\n /**\n * Original source component id when a section item is expanded to multiple\n * assignment slots (based on count) in asset-link mode.\n */\n assetTypeSectionComponentId?: string;\n assetTypeId: string;\n assetTypeSection?: {\n id: string;\n code: number;\n title: string;\n description?: string;\n };\n assetType: {\n id: string;\n name: string | AXPMultiLanguageString;\n };\n count: number;\n roleName: string | AXPMultiLanguageString;\n hasMaintenance: boolean;\n /**\n * Selected asset link for this slot in asset-link mode.\n */\n assetId?: string;\n asset?: {\n id: string;\n code?: string;\n title?: string | AXPMultiLanguageString;\n };\n}\n\nexport interface AXMAssetTypeSectionBuilderSectionValue {\n id: string;\n code: number;\n title: string | AXPMultiLanguageString;\n assetTypeId: string;\n description?: string | AXPMultiLanguageString;\n items: AXMAssetTypeSectionBuilderItemValue[];\n}\n\nexport interface AXMAssetTypeSectionBuilderValue {\n sections: AXMAssetTypeSectionBuilderSectionValue[];\n}\n\n//#endregion\n","//#region ---- Status enum ----\n\nexport enum AXMAssetStatus {\n Available = 'available',\n Assigned = 'assigned',\n UnderMaintenanceInspection = 'underMaintenanceInspection',\n OutOfService = 'outOfService',\n Lost = 'lost',\n}\n\n//#endregion\n","//#region ---- Status enum ----\n\nexport enum AXMAssetLifecycleStatus {\n Created = 'created',\n Active = 'active',\n Retired = 'retired',\n Disposed = 'disposed',\n}\n","//#region ---- Root Configuration ----\n\nconst config = {\n i18n: 'asset-management',\n module: 'AssetManagement',\n route: 'asset-management',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: config.route,\n name: config.module,\n title: '@asset-management:module.title',\n icon: 'fa-light fa-industry',\n },\n entities: {\n assetRentalHistory: {\n name: 'AssetRentalHistory',\n source: `${config.module}.AssetRentalHistory`,\n title: '@asset-management:assetRentalHistories.entities.assetRentalHistory.title',\n titlePlural: '@asset-management:assetRentalHistories.entities.assetRentalHistory.plural',\n icon: 'fa-light fa-file-contract',\n },\n assetSystemAssignment: {\n name: 'AssetSystemAssignment',\n source: `${config.module}.AssetSystemAssignment`,\n title: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.title',\n titlePlural: '@asset-management:assetSystemAssignments.entities.assetSystemAssignment.plural',\n icon: 'fa-light fa-link',\n },\n asset: {\n name: 'Asset',\n source: `${config.module}.Asset`,\n title: '@asset-management:assets.entities.asset.title',\n titlePlural: '@asset-management:assets.entities.asset.plural',\n icon: 'fa-light fa-box',\n },\n assetType: {\n name: 'AssetType',\n source: `${config.module}.AssetType`,\n title: '@asset-management:assetTypes.entities.assetType.title',\n titlePlural: '@asset-management:assetTypes.entities.assetType.plural',\n icon: 'fa-light fa-cubes',\n },\n assetTypeSection: {\n name: 'AssetTypeSection',\n source: `${config.module}.AssetTypeSection`,\n title: '@asset-management:assetTypeSections.entities.assetTypeSection.title',\n titlePlural: '@asset-management:assetTypeSections.entities.assetTypeSection.plural',\n icon: 'fa-light fa-layer-group',\n },\n assetTypeSectionComponent: {\n name: 'AssetTypeSectionComponent',\n source: `${config.module}.AssetTypeSectionComponent`,\n title: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.title',\n titlePlural: '@asset-management:assetTypeSectionComponents.entities.assetTypeSectionComponent.plural',\n icon: 'fa-light fa-puzzle-piece',\n },\n assetSystemType: {\n name: 'AssetSystemType',\n source: `${config.module}.AssetSystemType`,\n title: '@asset-management:assetSystemTypes.entities.assetSystemType.title',\n titlePlural: '@asset-management:assetSystemTypes.entities.assetSystemType.plural',\n icon: 'fa-light fa-diagram-subtask',\n },\n assetSystem: {\n name: 'AssetSystem',\n source: `${config.module}.AssetSystem`,\n title: 'Asset System',\n titlePlural: 'Asset Systems',\n icon: 'fa-light fa-diagram-project',\n },\n manualAssetCategory: {\n name: 'ManualAssetCategory',\n source: `${config.module}.ManualAssetCategory`,\n title: '@asset-management:asset-categories.entities.asset-category.title',\n titlePlural: '@asset-management:asset-categories.entities.asset-category.plural',\n icon: 'fa-light fa-tags',\n },\n // inspection: {\n // name: 'Inspection',\n // source: `${config.module}.Inspection`,\n // title: '@asset-management:inspections.entities.inspection.title',\n // titlePlural: '@asset-management:inspections.entities.inspection.plural',\n // icon: 'fa-light fa-clipboard-check',\n // },\n // assetStatus: {\n // name: 'AssetStatus',\n // source: `${config.module}.AssetStatus`,\n // title: '@asset-management:asset-statuses.entities.asset-status.title',\n // titlePlural: '@asset-management:asset-statuses.entities.asset-status.plural',\n // icon: 'fa-light fa-signal',\n // },\n },\n queries: {\n reports: {\n getAssetsByStatus: `${config.module}:Reports:GetAssetsByStatus`,\n getRentalUtilization: `${config.module}:Reports:GetRentalUtilization`,\n },\n },\n} as const;\n\n//#endregion\n","//#region ---- Contracts barrel ----\n\nexport * from './catalog-scope.keys';\nexport * from './commands.keys';\nexport * from './features.keys';\nexport * from './menu.keys';\nexport * from './permission.keys';\n\nexport * from './ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY';\nexport * from './AXM_ASSET_LIFECYCLE_STATUS_DEFINITION_KEY';\nexport * from './AXM_ASSET_STATUS_DEFINITION_KEY';\nexport * from './asset-rental-history.actions';\nexport * from './asset-rental-history.status';\nexport * from './asset-type-section-builder.types';\nexport * from './asset.status';\nexport * from './asset.lifecycle';\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,62 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, Injectable } from '@angular/core';
3
+ import { isString } from 'lodash';
4
+ import { AXMAssetOperationalStatusService } from './acorex-platform-module-asset-management-client.mjs';
5
+
6
+ //#endregion
7
+ /**
8
+ * Workflow activity wrapper for {@link AXMAssetOperationalStatusService.recalculate}.
9
+ */
10
+ class RecalculateAssetOperationalStatusActivity {
11
+ constructor() {
12
+ //#region ---- Services & Dependencies ----
13
+ this.assetOperationalStatusService = inject(AXMAssetOperationalStatusService);
14
+ }
15
+ //#endregion
16
+ //#region ---- Command Implementation ----
17
+ async execute(input) {
18
+ const assetId = input?.assetId?.trim();
19
+ const trigger = input?.trigger;
20
+ if (!assetId) {
21
+ return {
22
+ success: false,
23
+ message: { text: 'assetId is required' },
24
+ metadata: { outcome: 'Failed' },
25
+ };
26
+ }
27
+ if (trigger !== 'work-started' && trigger !== 'work-completed' && trigger !== 'work-signed-off') {
28
+ return {
29
+ success: false,
30
+ message: { text: 'trigger must be work-started, work-completed, or work-signed-off' },
31
+ metadata: { outcome: 'Failed' },
32
+ };
33
+ }
34
+ try {
35
+ const result = await this.assetOperationalStatusService.recalculate(assetId, trigger, {
36
+ workOrderId: isString(input.workOrderId) ? input.workOrderId.trim() : undefined,
37
+ maintenanceTypeId: isString(input.maintenanceTypeId) ? input.maintenanceTypeId.trim() : undefined,
38
+ });
39
+ return { success: true, kind: 'object',
40
+ data: result,
41
+ metadata: { outcome: 'Done' },
42
+ };
43
+ }
44
+ catch (error) {
45
+ const message = error instanceof Error ? error.message : 'Recalculate failed';
46
+ return {
47
+ success: false,
48
+ message: { text: message },
49
+ metadata: { outcome: 'Failed' },
50
+ };
51
+ }
52
+ }
53
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RecalculateAssetOperationalStatusActivity, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
54
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RecalculateAssetOperationalStatusActivity, providedIn: 'root' }); }
55
+ }
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: RecalculateAssetOperationalStatusActivity, decorators: [{
57
+ type: Injectable,
58
+ args: [{ providedIn: 'root' }]
59
+ }] });
60
+
61
+ export { RecalculateAssetOperationalStatusActivity };
62
+ //# sourceMappingURL=acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/workflows/recalculate-asset-operational-status.activity.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { isString } from 'lodash';\n\nimport { AXMAssetOperationalStatusService } from '../../services/asset-operational-status.service';\nimport type {\n AXMAssetOperationalStatusRecalculateResult,\n AXMAssetOperationalStatusTrigger,\n} from '../../services/asset-operational-status.types';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface RecalculateAssetOperationalStatusInput {\n assetId: string;\n trigger: AXMAssetOperationalStatusTrigger;\n workOrderId?: string;\n maintenanceTypeId?: string;\n}\n\n//#endregion\n\n/**\n * Workflow activity wrapper for {@link AXMAssetOperationalStatusService.recalculate}.\n */\n@Injectable({ providedIn: 'root' })\nexport class RecalculateAssetOperationalStatusActivity\n implements AXPCommand<RecalculateAssetOperationalStatusInput, AXMAssetOperationalStatusRecalculateResult>\n{\n //#region ---- Services & Dependencies ----\n\n private readonly assetOperationalStatusService = inject(AXMAssetOperationalStatusService);\n\n //#endregion\n\n //#region ---- Command Implementation ----\n\n async execute(\n input: RecalculateAssetOperationalStatusInput,\n ): AXPCommandExecuteResultPromise<AXMAssetOperationalStatusRecalculateResult> {\n const assetId = input?.assetId?.trim();\n const trigger = input?.trigger;\n\n if (!assetId) {\n return {\n success: false,\n message: { text: 'assetId is required' },\n metadata: { outcome: 'Failed' },\n };\n }\n\n if (trigger !== 'work-started' && trigger !== 'work-completed' && trigger !== 'work-signed-off') {\n return {\n success: false,\n message: { text: 'trigger must be work-started, work-completed, or work-signed-off' },\n metadata: { outcome: 'Failed' },\n };\n }\n\n try {\n const result = await this.assetOperationalStatusService.recalculate(assetId, trigger, {\n workOrderId: isString(input.workOrderId) ? input.workOrderId.trim() : undefined,\n maintenanceTypeId: isString(input.maintenanceTypeId) ? input.maintenanceTypeId.trim() : undefined,\n });\n\n return { success: true, kind: 'object',\n data: result,\n metadata: { outcome: 'Done' },\n };\n } catch (error: unknown) {\n const message = error instanceof Error ? error.message : 'Recalculate failed';\n return {\n success: false,\n message: { text: message },\n metadata: { outcome: 'Failed' },\n };\n }\n }\n\n //#endregion\n}\n"],"names":[],"mappings":";;;;;AAwBA;AAEA;;AAEG;MAEU,yCAAyC,CAAA;AADtD,IAAA,WAAA,GAAA;;AAMmB,QAAA,IAAA,CAAA,6BAA6B,GAAG,MAAM,CAAC,gCAAgC,CAAC;AAiD1F,IAAA;;;IA3CC,MAAM,OAAO,CACX,KAA6C,EAAA;QAE7C,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE;AACtC,QAAA,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO;QAE9B,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE;AACxC,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAChC;QACH;AAEA,QAAA,IAAI,OAAO,KAAK,cAAc,IAAI,OAAO,KAAK,gBAAgB,IAAI,OAAO,KAAK,iBAAiB,EAAE;YAC/F,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,kEAAkE,EAAE;AACrF,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAChC;QACH;AAEA,QAAA,IAAI;AACF,YAAA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE;AACpF,gBAAA,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,SAAS;AAC/E,gBAAA,iBAAiB,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,SAAS;AAClG,aAAA,CAAC;AAEF,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;AACpC,gBAAA,IAAI,EAAE,MAAM;AACZ,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;aAC9B;QACH;QAAE,OAAO,KAAc,EAAE;AACvB,YAAA,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,oBAAoB;YAC7E,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;AAC1B,gBAAA,QAAQ,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE;aAChC;QACH;IACF;8GAnDW,yCAAyC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAzC,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,yCAAyC,cAD5B,MAAM,EAAA,CAAA,CAAA;;2FACnB,yCAAyC,EAAA,UAAA,EAAA,CAAA;kBADrD,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}