@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.
- package/fesm2022/acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs +78 -0
- package/fesm2022/acorex-platform-module-asset-management-client-asset-lifecycle.provider-BDaCpGsv.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs +109 -0
- package/fesm2022/acorex-platform-module-asset-management-client-asset-rental-history-status.provider-DwhQPb0-.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts.mjs +257 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs +62 -0
- package/fesm2022/acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-ueTauO_k.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client.mjs +2472 -0
- package/fesm2022/acorex-platform-module-asset-management-client.mjs.map +1 -0
- package/package.json +28 -0
- package/types/acorex-platform-module-asset-management-client-contracts.d.ts +441 -0
- package/types/acorex-platform-module-asset-management-client.d.ts +278 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { AXPFeatureDefinitionProvider, AXPFeatureDefinitionProviderContext } from '@acorex-platform/framework-client/core';
|
|
3
|
+
import { AXPMenuProvider, AXPMenuProviderContext, AXPSearchCommandProvider, AXPSearchResult } from '@acorex-platform/framework-client/common';
|
|
4
|
+
import { AXPPermissionDefinitionProvider, AXPPermissionDefinitionProviderContext } from '@acorex-platform/framework-client/auth';
|
|
5
|
+
import { AXPStatusProvider, AXPStatusTransition, AXPMultiLanguageString } from '@acorex-platform/framework-shared/core';
|
|
6
|
+
import { AXStyleColorType } from '@acorex/cdk/common';
|
|
7
|
+
import { AXMAssetStatus, AXMAssetManagementAssetRentalHistoryEntityModel, AXMAssetTypeSectionBuilderValue } from '@acorex-platform/module-asset-management-client/contracts';
|
|
8
|
+
export * from '@acorex-platform/module-asset-management-client/contracts';
|
|
9
|
+
export { AXMAssetTypeSectionBuilderItemValue, AXMAssetTypeSectionBuilderSectionValue, AXMAssetTypeSectionBuilderValue } from '@acorex-platform/module-asset-management-client/contracts';
|
|
10
|
+
import { AXPCommand, AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';
|
|
11
|
+
import { AXPCommandService } from '@acorex-platform/framework-client/runtime';
|
|
12
|
+
import { AXPBuilderValue, AXPStandardSectionItemsBuilderConfig, AXPPageComponentProvider, AXPPageComponentDefinition } from '@acorex-platform/framework-client/layout/components';
|
|
13
|
+
import { AXPPageLayoutBaseComponent, AXPLayoutDetailsViewAction } from '@acorex-platform/framework-client/layout/views';
|
|
14
|
+
|
|
15
|
+
declare class AXMAssetManagementModule {
|
|
16
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMAssetManagementModule, never>;
|
|
17
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<AXMAssetManagementModule, never, never, never>;
|
|
18
|
+
static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXMAssetManagementModule>;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Asset Management Feature Definition Provider.
|
|
23
|
+
* Provides feature definitions for the Asset Management module.
|
|
24
|
+
*/
|
|
25
|
+
declare class AXMAssetManagementFeatureDefinitionProvider implements AXPFeatureDefinitionProvider {
|
|
26
|
+
provide(context: AXPFeatureDefinitionProviderContext): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Asset Management Menu Provider.
|
|
31
|
+
* Provides menu items for the Asset Management module with permission and feature checks.
|
|
32
|
+
*/
|
|
33
|
+
declare class AXMAssetManagementMenuProvider implements AXPMenuProvider {
|
|
34
|
+
private readonly entityService;
|
|
35
|
+
provide(context: AXPMenuProviderContext): Promise<void>;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Registers Assets & Maintenance capabilities owned by asset-management.
|
|
40
|
+
*/
|
|
41
|
+
declare class AXMAssetManagementPermissionDefinitionProvider implements AXPPermissionDefinitionProvider {
|
|
42
|
+
define(context: AXPPermissionDefinitionProviderContext): Promise<void>;
|
|
43
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMAssetManagementPermissionDefinitionProvider, never>;
|
|
44
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXMAssetManagementPermissionDefinitionProvider>;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
declare class AXMAssetManagementSearchCommandProvider extends AXPSearchCommandProvider {
|
|
48
|
+
commands: AXPSearchResult[];
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
declare class AXMAssetManagementAssetStatusProvider extends AXPStatusProvider {
|
|
52
|
+
readonly key = "asset-management.status.asset";
|
|
53
|
+
readonly statuses: {
|
|
54
|
+
name: AXMAssetStatus;
|
|
55
|
+
title: string;
|
|
56
|
+
icon: string;
|
|
57
|
+
color: AXStyleColorType;
|
|
58
|
+
order: number;
|
|
59
|
+
isInitial: boolean;
|
|
60
|
+
isFinal: boolean;
|
|
61
|
+
generateView: boolean;
|
|
62
|
+
}[];
|
|
63
|
+
readonly transitions: AXPStatusTransition[];
|
|
64
|
+
readonly defaultStatus = AXMAssetStatus.Available;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
declare function assertRentalPartyForDirection(data: Pick<AXMAssetManagementAssetRentalHistoryEntityModel, 'rentalDirection' | 'rentedToId' | 'rentedFromId'>): void;
|
|
68
|
+
|
|
69
|
+
type AXMAssetRentalHistoryRentDirection = 'rentFrom' | 'rentTo';
|
|
70
|
+
interface CreateAssetRentalHistoryRentCommandInput {
|
|
71
|
+
data?: Record<string, unknown>;
|
|
72
|
+
options?: Record<string, unknown>;
|
|
73
|
+
}
|
|
74
|
+
declare abstract class AXMCreateAssetRentalHistoryRentCommandBase implements AXPCommand<CreateAssetRentalHistoryRentCommandInput, unknown> {
|
|
75
|
+
protected readonly commandService: AXPCommandService;
|
|
76
|
+
protected abstract readonly rentalDirection: AXMAssetRentalHistoryRentDirection;
|
|
77
|
+
execute(input: CreateAssetRentalHistoryRentCommandInput): AXPCommandExecuteResultPromise<unknown>;
|
|
78
|
+
private resolveSeedData;
|
|
79
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMCreateAssetRentalHistoryRentCommandBase, never>;
|
|
80
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXMCreateAssetRentalHistoryRentCommandBase>;
|
|
81
|
+
}
|
|
82
|
+
declare class AXMCreateAssetRentalHistoryRentFromCommand extends AXMCreateAssetRentalHistoryRentCommandBase {
|
|
83
|
+
static readonly commandKey: "AssetManagement.AssetRentalHistory:RentFrom";
|
|
84
|
+
protected readonly rentalDirection: "rentFrom";
|
|
85
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMCreateAssetRentalHistoryRentFromCommand, never>;
|
|
86
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXMCreateAssetRentalHistoryRentFromCommand>;
|
|
87
|
+
}
|
|
88
|
+
declare class AXMCreateAssetRentalHistoryRentToCommand extends AXMCreateAssetRentalHistoryRentCommandBase {
|
|
89
|
+
static readonly commandKey: "AssetManagement.AssetRentalHistory:RentTo";
|
|
90
|
+
protected readonly rentalDirection: "rentTo";
|
|
91
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMCreateAssetRentalHistoryRentToCommand, never>;
|
|
92
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXMCreateAssetRentalHistoryRentToCommand>;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
declare function normalizeAssetTypeBuilderLocalizedField(value: unknown, fallback: string): string | AXPMultiLanguageString;
|
|
96
|
+
declare function createAssetTypeSectionBuilderDefaultValue(assetTypeId?: string): AXMAssetTypeSectionBuilderValue;
|
|
97
|
+
declare function normalizeAssetTypeSectionBuilderValue(value: unknown, assetTypeId?: string): AXMAssetTypeSectionBuilderValue;
|
|
98
|
+
|
|
99
|
+
declare class AXMAssetTypeSectionBuilderComponent {
|
|
100
|
+
#private;
|
|
101
|
+
readonly value: _angular_core.InputSignal<AXMAssetTypeSectionBuilderValue | null | undefined>;
|
|
102
|
+
readonly assetTypeId: _angular_core.InputSignal<string | undefined>;
|
|
103
|
+
readonly options: _angular_core.InputSignal<Record<string, unknown>>;
|
|
104
|
+
readonly valueChange: _angular_core.OutputEmitterRef<AXMAssetTypeSectionBuilderValue>;
|
|
105
|
+
private readonly standardRef;
|
|
106
|
+
private readonly layoutBuilder;
|
|
107
|
+
private readonly translationService;
|
|
108
|
+
private readonly disabledSectionPrompt;
|
|
109
|
+
private readonly disabledAddSectionPrompt;
|
|
110
|
+
protected readonly builderValue: _angular_core.WritableSignal<AXPBuilderValue>;
|
|
111
|
+
protected readonly standardConfig: _angular_core.Signal<AXPStandardSectionItemsBuilderConfig>;
|
|
112
|
+
protected readonly hideHeaderActions: _angular_core.Signal<boolean>;
|
|
113
|
+
protected readonly allowAddSection: _angular_core.Signal<boolean>;
|
|
114
|
+
protected readonly allowEditSection: _angular_core.Signal<boolean>;
|
|
115
|
+
protected readonly allowAddItems: _angular_core.Signal<boolean>;
|
|
116
|
+
protected readonly allowReorderSections: _angular_core.Signal<boolean>;
|
|
117
|
+
protected readonly readonly: _angular_core.Signal<boolean>;
|
|
118
|
+
protected readonly linkAssetMode: _angular_core.Signal<boolean>;
|
|
119
|
+
addSection(): Promise<void>;
|
|
120
|
+
/** Aligns section-items baseline to persisted value after save. */
|
|
121
|
+
syncAfterSave(value: AXMAssetTypeSectionBuilderValue): void;
|
|
122
|
+
/** Re-applies the current `[value]` input and clears builder dirty state after discard. */
|
|
123
|
+
resetAfterDiscard(): void;
|
|
124
|
+
protected onBuilderValueChange(next: AXPBuilderValue): void;
|
|
125
|
+
private promptAddSection;
|
|
126
|
+
private promptEditSection;
|
|
127
|
+
private promptSectionForm;
|
|
128
|
+
private isDuplicateSectionCode;
|
|
129
|
+
private getNextSectionCode;
|
|
130
|
+
private mapItemToView;
|
|
131
|
+
private promptAddItems;
|
|
132
|
+
private promptEditItem;
|
|
133
|
+
private promptEditLinkedAssetItem;
|
|
134
|
+
private promptLinkAssetForm;
|
|
135
|
+
private confirmRemoveLinkedAssetItem;
|
|
136
|
+
private buildRemoveLinkedAssetFormDefinition;
|
|
137
|
+
private unlinkLinkedAssetItem;
|
|
138
|
+
private promptItemForm;
|
|
139
|
+
private buildItemFormDefinition;
|
|
140
|
+
private buildSectionFormDefinition;
|
|
141
|
+
private buildLinkAssetFormDefinition;
|
|
142
|
+
private toFieldDefinition;
|
|
143
|
+
private toBuilderValue;
|
|
144
|
+
private fromBuilderValue;
|
|
145
|
+
private mapBuilderItemToDomain;
|
|
146
|
+
private resolveLocalizedTextForDialog;
|
|
147
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMAssetTypeSectionBuilderComponent, never>;
|
|
148
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXMAssetTypeSectionBuilderComponent, "axm-asset-type-section-builder", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "assetTypeId": { "alias": "assetTypeId"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
declare class AXMAssetTypeSectionBuilderPageComponent extends AXPPageLayoutBaseComponent {
|
|
152
|
+
#private;
|
|
153
|
+
/** Default `{}`: required inputs throw (NG0950) if read before `AXPPageComponentRendererDirective` calls `setInput` after `createComponent`. */
|
|
154
|
+
rootContext: _angular_core.InputSignal<Record<string, unknown>>;
|
|
155
|
+
pageConfig: _angular_core.InputSignal<Record<string, unknown> | undefined>;
|
|
156
|
+
options: _angular_core.InputSignal<Record<string, unknown>>;
|
|
157
|
+
protected readonly builderRef: _angular_core.Signal<AXMAssetTypeSectionBuilderComponent | undefined>;
|
|
158
|
+
private readonly commandService;
|
|
159
|
+
private readonly entityService;
|
|
160
|
+
private readonly hostPageLayout;
|
|
161
|
+
private readonly baselineValue;
|
|
162
|
+
protected readonly committedValue: _angular_core.WritableSignal<AXMAssetTypeSectionBuilderValue | null | undefined>;
|
|
163
|
+
private readonly config;
|
|
164
|
+
protected readonly fieldName: _angular_core.Signal<string>;
|
|
165
|
+
protected readonly sourceFieldName: _angular_core.Signal<string>;
|
|
166
|
+
protected readonly sourceIdPath: _angular_core.Signal<string>;
|
|
167
|
+
protected readonly targetIdPath: _angular_core.Signal<string>;
|
|
168
|
+
protected readonly sourceEntityRef: _angular_core.Signal<string>;
|
|
169
|
+
protected readonly targetEntityRef: _angular_core.Signal<string>;
|
|
170
|
+
protected readonly context: _angular_core.Signal<Record<string, unknown>>;
|
|
171
|
+
protected readonly sourceRecordId: _angular_core.Signal<string | undefined>;
|
|
172
|
+
protected readonly targetRecordId: _angular_core.Signal<string | undefined>;
|
|
173
|
+
protected readonly readonly: _angular_core.Signal<boolean>;
|
|
174
|
+
protected readonly linkAssetMode: _angular_core.Signal<boolean>;
|
|
175
|
+
protected readonly allowAddSection: _angular_core.Signal<boolean>;
|
|
176
|
+
protected readonly allowAddItems: _angular_core.Signal<boolean>;
|
|
177
|
+
protected readonly allowEditSection: _angular_core.Signal<boolean>;
|
|
178
|
+
protected readonly allowReorderSections: _angular_core.Signal<boolean>;
|
|
179
|
+
protected readonly builderOptions: _angular_core.Signal<{
|
|
180
|
+
hideHeaderActions: boolean;
|
|
181
|
+
readonly: boolean;
|
|
182
|
+
linkAssetMode: boolean;
|
|
183
|
+
mainAssetId: string | undefined;
|
|
184
|
+
allowAddSection: boolean;
|
|
185
|
+
allowEditSection: boolean;
|
|
186
|
+
allowAddItems: boolean;
|
|
187
|
+
allowReorderSections: boolean;
|
|
188
|
+
}>;
|
|
189
|
+
protected readonly isDirty: _angular_core.Signal<boolean>;
|
|
190
|
+
protected onValueChange(value: AXMAssetTypeSectionBuilderValue): void;
|
|
191
|
+
getWizardStepContext(): Record<string, unknown> | null;
|
|
192
|
+
hasUnsavedChanges(): boolean;
|
|
193
|
+
getPrimaryMenuItems(): Promise<AXPLayoutDetailsViewAction[]>;
|
|
194
|
+
execute(command: {
|
|
195
|
+
name: string;
|
|
196
|
+
options?: unknown;
|
|
197
|
+
}): Promise<void>;
|
|
198
|
+
private handleSave;
|
|
199
|
+
protected recompute(): void;
|
|
200
|
+
private handleDiscard;
|
|
201
|
+
/** Keeps details-view `rootContext` in sync so sidebar navigation remounts with latest data. */
|
|
202
|
+
private updateRootContextField;
|
|
203
|
+
private buildLinkedAssetValue;
|
|
204
|
+
private withSlotSuffix;
|
|
205
|
+
private toAssetComponentValue;
|
|
206
|
+
private readStringConfig;
|
|
207
|
+
private readBooleanConfig;
|
|
208
|
+
private hasSections;
|
|
209
|
+
/**
|
|
210
|
+
* Prefer links loaded with the record (`byKey`). Context often holds `assetComponents: []` from a
|
|
211
|
+
* partial row merge; `[] ?? serverLinks` would keep the empty array and hide persisted assignments.
|
|
212
|
+
*/
|
|
213
|
+
private pickPersistedComponentLinks;
|
|
214
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMAssetTypeSectionBuilderPageComponent, never>;
|
|
215
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXMAssetTypeSectionBuilderPageComponent, "axm-asset-type-section-builder-page", never, { "rootContext": { "alias": "rootContext"; "required": false; "isSignal": true; }; "pageConfig": { "alias": "pageConfig"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
declare class AXMAssetTypeComponentsPageComponentProvider implements AXPPageComponentProvider {
|
|
219
|
+
components(): Promise<AXPPageComponentDefinition[]>;
|
|
220
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMAssetTypeComponentsPageComponentProvider, never>;
|
|
221
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXMAssetTypeComponentsPageComponentProvider>;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
declare const ASSET_TYPE_COMPONENTS_SAVE_COMMAND = "AssetType:Components:Save";
|
|
225
|
+
interface SaveAssetTypeComponentsInput {
|
|
226
|
+
id: string;
|
|
227
|
+
entity?: string;
|
|
228
|
+
field?: string;
|
|
229
|
+
value: unknown;
|
|
230
|
+
name?: unknown;
|
|
231
|
+
title?: unknown;
|
|
232
|
+
}
|
|
233
|
+
declare class AXMSaveAssetTypeComponentsCommand implements AXPCommand<SaveAssetTypeComponentsInput, unknown> {
|
|
234
|
+
private readonly entityService;
|
|
235
|
+
private readonly translationService;
|
|
236
|
+
execute(input: SaveAssetTypeComponentsInput): AXPCommandExecuteResultPromise<unknown>;
|
|
237
|
+
private ensureLatinName;
|
|
238
|
+
private toLatinIdentifier;
|
|
239
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMSaveAssetTypeComponentsCommand, never>;
|
|
240
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXMSaveAssetTypeComponentsCommand>;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
/** Triggers consumed by {@link AXMAssetOperationalStatusService}. */
|
|
244
|
+
type AXMAssetOperationalStatusTrigger = 'work-started' | 'work-completed' | 'work-signed-off';
|
|
245
|
+
interface AXMAssetOperationalStatusRecalculateContext {
|
|
246
|
+
workOrderId?: string;
|
|
247
|
+
maintenanceTypeId?: string;
|
|
248
|
+
}
|
|
249
|
+
interface AXMAssetOperationalStatusRecalculateResult {
|
|
250
|
+
assetId: string;
|
|
251
|
+
previousStatusId: string | null;
|
|
252
|
+
statusId: string | null;
|
|
253
|
+
changed: boolean;
|
|
254
|
+
reason?: string;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Central policy for asset operational status changes driven by maintenance work orders.
|
|
259
|
+
* Callers must not set `Asset.statusId` directly from workflows — use {@link recalculate} only.
|
|
260
|
+
*/
|
|
261
|
+
declare class AXMAssetOperationalStatusService {
|
|
262
|
+
private readonly entityService;
|
|
263
|
+
recalculate(assetIdRaw: string, trigger: AXMAssetOperationalStatusTrigger, context?: AXMAssetOperationalStatusRecalculateContext): Promise<AXMAssetOperationalStatusRecalculateResult>;
|
|
264
|
+
private resolveMaintenanceTypeId;
|
|
265
|
+
/**
|
|
266
|
+
* Inspection-like maintenance types keep the asset blocked under the combined operational status.
|
|
267
|
+
* TODO: replace title/code heuristic with an explicit MaintenanceType classification field when available.
|
|
268
|
+
*/
|
|
269
|
+
private shouldBlockAssetForMaintenance;
|
|
270
|
+
private hasBlockingWorkOrders;
|
|
271
|
+
private resolveRestoredStatus;
|
|
272
|
+
private resolveDisplayText;
|
|
273
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMAssetOperationalStatusService, never>;
|
|
274
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXMAssetOperationalStatusService>;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
export { ASSET_TYPE_COMPONENTS_SAVE_COMMAND, AXMAssetManagementAssetStatusProvider, AXMAssetManagementFeatureDefinitionProvider, AXMAssetManagementMenuProvider, AXMAssetManagementModule, AXMAssetManagementPermissionDefinitionProvider, AXMAssetManagementSearchCommandProvider, AXMAssetOperationalStatusService, AXMAssetTypeComponentsPageComponentProvider, AXMAssetTypeSectionBuilderComponent, AXMAssetTypeSectionBuilderPageComponent, AXMCreateAssetRentalHistoryRentFromCommand, AXMCreateAssetRentalHistoryRentToCommand, AXMSaveAssetTypeComponentsCommand, assertRentalPartyForDirection, createAssetTypeSectionBuilderDefaultValue, normalizeAssetTypeBuilderLocalizedField, normalizeAssetTypeSectionBuilderValue };
|
|
278
|
+
export type { AXMAssetOperationalStatusRecalculateContext, AXMAssetOperationalStatusRecalculateResult, AXMAssetOperationalStatusTrigger, CreateAssetRentalHistoryRentCommandInput, SaveAssetTypeComponentsInput };
|