@acorex-platform/module-asset-management-client 0.0.68 → 0.0.70
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-acorex-platform-module-asset-management-client-B7YXKaeh.mjs → acorex-platform-module-asset-management-client-acorex-platform-module-asset-management-client-BGF5UnLv.mjs} +6 -6
- package/fesm2022/{acorex-platform-module-asset-management-client-acorex-platform-module-asset-management-client-B7YXKaeh.mjs.map → acorex-platform-module-asset-management-client-acorex-platform-module-asset-management-client-BGF5UnLv.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-asset-usage-values-widget-edit.component-qauvpIMv.mjs → acorex-platform-module-asset-management-client-asset-usage-values-widget-edit.component-Da7eu5ZQ.mjs} +11 -8
- package/fesm2022/acorex-platform-module-asset-management-client-asset-usage-values-widget-edit.component-Da7eu5ZQ.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-asset-management-client-asset-usage-values-widget-view.component-5psJebph.mjs → acorex-platform-module-asset-management-client-asset-usage-values-widget-view.component-DSGfqZeL.mjs} +12 -9
- package/fesm2022/acorex-platform-module-asset-management-client-asset-usage-values-widget-view.component-DSGfqZeL.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entities-asset-type.mjs +5 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entities-asset-type.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entities-asset.mjs +19 -14
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entities-asset.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-acorex-platform-module-asset-management-client-contracts-entity-catalog-CnuEulTO.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-acorex-platform-module-asset-management-client-contracts-entity-catalog-DKT9si68.mjs} +9 -9
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-acorex-platform-module-asset-management-client-contracts-entity-catalog-CnuEulTO.mjs.map → acorex-platform-module-asset-management-client-contracts-entity-catalog-acorex-platform-module-asset-management-client-contracts-entity-catalog-DKT9si68.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-rental-history.entity-Cy6qssiv.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-rental-history.entity-CMOTBare.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-rental-history.entity-Cy6qssiv.mjs.map → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-rental-history.entity-CMOTBare.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-assignment.entity-BvXjVaqK.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-assignment.entity-C--mzHfv.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-assignment.entity-BvXjVaqK.mjs.map → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-assignment.entity-C--mzHfv.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-type.entity-DanmgSHH.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-type.entity-BsBULEtw.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-type.entity-DanmgSHH.mjs.map → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system-type.entity-BsBULEtw.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system.entity-BO2GQu2_.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system.entity-U0E378Kp.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system.entity-BO2GQu2_.mjs.map → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-system.entity-U0E378Kp.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section-component.entity-DumWQV-O.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section-component.entity-IIFjvZhm.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section-component.entity-DumWQV-O.mjs.map → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section-component.entity-IIFjvZhm.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section.entity-B5Z8s8_4.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section.entity-DCRV6Hw1.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section.entity-B5Z8s8_4.mjs.map → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type-section.entity-DCRV6Hw1.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type.entity-BO3otOO_.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type.entity-D8QHs2bd.mjs} +7 -3
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type.entity-D8QHs2bd.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.entity-CvCBkNVZ.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.entity-B1kZuGxF.mjs} +21 -17
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.entity-B1kZuGxF.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.interval-kind-nMKvWqpx.mjs → acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.interval-kind-SA7OYpBO.mjs} +2 -1
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.interval-kind-SA7OYpBO.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entity-catalog.mjs +1 -1
- package/fesm2022/acorex-platform-module-asset-management-client-contracts.mjs +1 -0
- package/fesm2022/acorex-platform-module-asset-management-client-contracts.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-RGXS9fI1.mjs → acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-jPhKrf_o.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-RGXS9fI1.mjs.map → acorex-platform-module-asset-management-client-recalculate-asset-operational-status.activity-jPhKrf_o.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-asset-management-client.mjs +1 -1
- package/i18n/en-AU/asset-management.json +5 -1
- package/i18n/en-US/asset-management.json +5 -1
- package/i18n/fa-IR/asset-management.json +5 -1
- package/package.json +2 -2
- package/types/acorex-platform-module-asset-management-client-contracts.d.ts +3 -0
- package/fesm2022/acorex-platform-module-asset-management-client-asset-usage-values-widget-edit.component-qauvpIMv.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-asset-management-client-asset-usage-values-widget-view.component-5psJebph.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entity-catalog-asset-type.entity-BO3otOO_.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.entity-CvCBkNVZ.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-asset-management-client-contracts-entity-catalog-asset.interval-kind-nMKvWqpx.mjs.map +0 -1
|
@@ -12,7 +12,7 @@ import { AXTranslationModule } from '@acorex/core/translation';
|
|
|
12
12
|
import { AsyncPipe } from '@angular/common';
|
|
13
13
|
import * as i1 from '@angular/forms';
|
|
14
14
|
import { FormsModule } from '@angular/forms';
|
|
15
|
-
import { c as USAGE_METER_KIND_ORDER, a as AXM_ASSET_USAGE_I18N, U as USAGE_UNIT_LABEL_KEYS, b as USAGE_KIND_LABEL_KEYS, i as isUsageMeterKind, r as readAssetUsageIntervalKinds } from './acorex-platform-module-asset-management-client-acorex-platform-module-asset-management-client-
|
|
15
|
+
import { c as USAGE_METER_KIND_ORDER, a as AXM_ASSET_USAGE_I18N, U as USAGE_UNIT_LABEL_KEYS, b as USAGE_KIND_LABEL_KEYS, i as isUsageMeterKind, r as readAssetUsageIntervalKinds } from './acorex-platform-module-asset-management-client-acorex-platform-module-asset-management-client-BGF5UnLv.mjs';
|
|
16
16
|
|
|
17
17
|
//#endregion
|
|
18
18
|
//#region ----- Helpers -----
|
|
@@ -108,7 +108,6 @@ class AXMAssetUsageValuesComponent {
|
|
|
108
108
|
//#endregion
|
|
109
109
|
//#region ----- Constants -----
|
|
110
110
|
this.emptyKey = `${AXM_ASSET_USAGE_I18N}.empty`;
|
|
111
|
-
this.dateNoteKey = `${AXM_ASSET_USAGE_I18N}.date-note`;
|
|
112
111
|
this.distanceUnits = [
|
|
113
112
|
{ id: AXMAssetIntervalUnit.Kilometer, text: USAGE_UNIT_LABEL_KEYS[AXMAssetIntervalUnit.Kilometer] },
|
|
114
113
|
{ id: AXMAssetIntervalUnit.Mile, text: USAGE_UNIT_LABEL_KEYS[AXMAssetIntervalUnit.Mile] },
|
|
@@ -122,8 +121,6 @@ class AXMAssetUsageValuesComponent {
|
|
|
122
121
|
this.lastHydrated = '';
|
|
123
122
|
//#endregion
|
|
124
123
|
//#region ----- Computed Properties -----
|
|
125
|
-
this.showDateNote = computed(() => this.supportedIntervalKinds().includes(AXMAssetIntervalKind.Date), /* @ts-ignore */
|
|
126
|
-
...(ngDevMode ? [{ debugName: "showDateNote" }] : /* istanbul ignore next */ []));
|
|
127
124
|
this.fields = computed(() => {
|
|
128
125
|
const draft = this.draft();
|
|
129
126
|
const fields = [];
|
|
@@ -146,7 +143,13 @@ class AXMAssetUsageValuesComponent {
|
|
|
146
143
|
return fields;
|
|
147
144
|
}, /* @ts-ignore */
|
|
148
145
|
...(ngDevMode ? [{ debugName: "fields" }] : /* istanbul ignore next */ []));
|
|
149
|
-
this.showEmpty = computed(() =>
|
|
146
|
+
this.showEmpty = computed(() => {
|
|
147
|
+
if (this.fields().length > 0) {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
const kinds = this.supportedIntervalKinds();
|
|
151
|
+
return !kinds.includes(AXMAssetIntervalKind.Schedule);
|
|
152
|
+
}, /* @ts-ignore */
|
|
150
153
|
...(ngDevMode ? [{ debugName: "showEmpty" }] : /* istanbul ignore next */ []));
|
|
151
154
|
effect(() => {
|
|
152
155
|
const supported = this.supportedIntervalKinds();
|
|
@@ -205,7 +208,7 @@ class AXMAssetUsageValuesComponent {
|
|
|
205
208
|
this.valueChange.emit(values);
|
|
206
209
|
}
|
|
207
210
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMAssetUsageValuesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
208
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMAssetUsageValuesComponent, isStandalone: true, selector: "axm-asset-usage-values", inputs: { supportedIntervalKinds: { classPropertyName: "supportedIntervalKinds", publicName: "supportedIntervalKinds", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, lockUnits: { classPropertyName: "lockUnits", publicName: "lockUnits", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { classAttribute: "block" }, ngImport: i0, template: "<!-- ----- No
|
|
211
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMAssetUsageValuesComponent, isStandalone: true, selector: "axm-asset-usage-values", inputs: { supportedIntervalKinds: { classPropertyName: "supportedIntervalKinds", publicName: "supportedIntervalKinds", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, lockUnits: { classPropertyName: "lockUnits", publicName: "lockUnits", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { classAttribute: "block" }, ngImport: i0, template: "<!-- ----- No supported interval kinds on the asset type ----- -->\n@if (showEmpty()) {\n <p class=\"ax-text-muted\">{{ emptyKey | translate | async }}</p>\n}\n\n@for (field of fields(); track field.kind) {\n <div class=\"mt-3 flex flex-col gap-2\">\n <ax-label>{{ field.labelKey | translate | async }}</ax-label>\n <div class=\"flex flex-wrap items-center gap-3\">\n <ax-number-box\n class=\"w-36\"\n [minValue]=\"field.minValue\"\n [decimals]=\"field.decimals\"\n [ngModel]=\"field.currentValue\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onValue(field.kind, $event)\"\n ></ax-number-box>\n <!-- ----- Distance unit can be chosen only before a reading is stored ----- -->\n @if (field.unitSelectable) {\n <ax-selection-list\n [items]=\"distanceUnits\"\n [ngModel]=\"field.unit\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onDistanceUnit($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n }\n <!-- ----- Saved or fixed unit stays beside the number and is not part of the input ----- -->\n @else {\n <span class=\"ax-text-muted\">({{ field.unitLabelKey | translate | async }})</span>\n }\n </div>\n </div>\n}\n", dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXNumberBoxModule }, { kind: "component", type: i2.AXNumberBoxComponent, selector: "ax-number-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "minValue", "maxValue", "showSpinButtons", "thousandsSeparator", "decimals", "changeOnScroll", "step"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress", "thousandsSeparatorChange"] }, { kind: "ngmodule", type: AXSelectionListModule }, { kind: "component", type: i3.AXSelectionListComponent, selector: "ax-selection-list", inputs: ["id", "name", "disabled", "readonly", "tabIndex", "value", "valueField", "textField", "disabledField", "readonlyField", "multiple", "direction", "customTemplate", "showControl", "items", "look"], outputs: ["onValueChanged", "onBlur", "onFocus"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
209
212
|
}
|
|
210
213
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMAssetUsageValuesComponent, decorators: [{
|
|
211
214
|
type: Component,
|
|
@@ -216,7 +219,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
216
219
|
AXLabelComponent,
|
|
217
220
|
AXNumberBoxModule,
|
|
218
221
|
AXSelectionListModule,
|
|
219
|
-
], host: { class: 'block' }, template: "<!-- ----- No
|
|
222
|
+
], host: { class: 'block' }, template: "<!-- ----- No supported interval kinds on the asset type ----- -->\n@if (showEmpty()) {\n <p class=\"ax-text-muted\">{{ emptyKey | translate | async }}</p>\n}\n\n@for (field of fields(); track field.kind) {\n <div class=\"mt-3 flex flex-col gap-2\">\n <ax-label>{{ field.labelKey | translate | async }}</ax-label>\n <div class=\"flex flex-wrap items-center gap-3\">\n <ax-number-box\n class=\"w-36\"\n [minValue]=\"field.minValue\"\n [decimals]=\"field.decimals\"\n [ngModel]=\"field.currentValue\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onValue(field.kind, $event)\"\n ></ax-number-box>\n <!-- ----- Distance unit can be chosen only before a reading is stored ----- -->\n @if (field.unitSelectable) {\n <ax-selection-list\n [items]=\"distanceUnits\"\n [ngModel]=\"field.unit\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onDistanceUnit($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n }\n <!-- ----- Saved or fixed unit stays beside the number and is not part of the input ----- -->\n @else {\n <span class=\"ax-text-muted\">({{ field.unitLabelKey | translate | async }})</span>\n }\n </div>\n </div>\n}\n" }]
|
|
220
223
|
}], ctorParameters: () => [], propDecorators: { supportedIntervalKinds: [{ type: i0.Input, args: [{ isSignal: true, alias: "supportedIntervalKinds", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], lockUnits: [{ type: i0.Input, args: [{ isSignal: true, alias: "lockUnits", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] } });
|
|
221
224
|
|
|
222
225
|
//#region ----- Imports -----
|
|
@@ -273,4 +276,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
273
276
|
}] });
|
|
274
277
|
|
|
275
278
|
export { AXMAssetUsageValuesWidgetEditComponent };
|
|
276
|
-
//# sourceMappingURL=acorex-platform-module-asset-management-client-asset-usage-values-widget-edit.component-
|
|
279
|
+
//# sourceMappingURL=acorex-platform-module-asset-management-client-asset-usage-values-widget-edit.component-Da7eu5ZQ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-asset-management-client-asset-usage-values-widget-edit.component-Da7eu5ZQ.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/asset-usage-values/asset-usage-values.component.ts","../../../../libs/modules/asset-management/client/src/lib/features/asset-usage-values/asset-usage-values.component.html","../../../../libs/modules/asset-management/client/src/lib/features/asset-usage-values/asset-usage-values-widget-edit.component.ts"],"sourcesContent":["//#region ----- Imports -----\n\nimport { AXValueChangedEvent } from '@acorex/cdk/common';\nimport { AXLabelComponent } from '@acorex/components/label';\nimport { AXNumberBoxModule } from '@acorex/components/number-box';\nimport { AXSelectionListModule } from '@acorex/components/selection-list';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport {\n AXMAssetIntervalKind,\n AXMAssetIntervalUnit,\n isAXMAssetUsageUnitForKind,\n readAssetUsageValues,\n type AXMAssetUsageKind,\n type AXMAssetUsageValue,\n} from '@acorex-platform/module-asset-management-client/contracts';\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, effect, input, output, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport {\n AXM_ASSET_USAGE_I18N,\n USAGE_KIND_LABEL_KEYS,\n USAGE_METER_KIND_ORDER,\n USAGE_UNIT_LABEL_KEYS,\n isUsageMeterKind,\n} from './asset-usage-values.kinds';\n\n//#endregion\n\n//#region ----- Types -----\n\ninterface UsageDraftItem {\n currentValue: number | null;\n unit: AXMAssetIntervalUnit;\n lastReadingAt?: string;\n unitLocked: boolean;\n baseline: number | null;\n}\n\ninterface UsageField {\n kind: AXMAssetUsageKind;\n labelKey: string;\n currentValue: number | null;\n unit: AXMAssetIntervalUnit;\n unitSelectable: boolean;\n minValue: number;\n decimals: number;\n unitLabelKey: string;\n}\n\ninterface UsageChoice {\n id: string;\n text: string;\n}\n\n//#endregion\n\n//#region ----- Helpers -----\n\nfunction defaultUnit(kind: AXMAssetUsageKind): AXMAssetIntervalUnit {\n switch (kind) {\n case AXMAssetIntervalKind.Distance:\n return AXMAssetIntervalUnit.Kilometer;\n case AXMAssetIntervalKind.OperatingHours:\n return AXMAssetIntervalUnit.Hour;\n case AXMAssetIntervalKind.OperationCount:\n return AXMAssetIntervalUnit.Operation;\n }\n}\n\nfunction stable(value: unknown): string {\n return JSON.stringify(value);\n}\n\nfunction readChoiceId(value: unknown): string {\n if (typeof value === 'string') {\n return value;\n }\n if (Array.isArray(value)) {\n return readChoiceId(value[0]);\n }\n if (value && typeof value === 'object' && 'id' in value && typeof (value as { id: unknown }).id === 'string') {\n return (value as { id: string }).id;\n }\n return '';\n}\n\nfunction kindsToShow(supported: readonly string[], stored: readonly AXMAssetUsageValue[]): AXMAssetUsageKind[] {\n const supportedMeters = USAGE_METER_KIND_ORDER.filter((kind) => supported.includes(kind));\n if (supportedMeters.length > 0) {\n return supportedMeters;\n }\n return USAGE_METER_KIND_ORDER.filter((kind) => stored.some((item) => item.kind === kind));\n}\n\nfunction buildDraft(kinds: readonly AXMAssetUsageKind[], stored: readonly AXMAssetUsageValue[]): Record<string, UsageDraftItem> {\n const byKind = new Map(stored.map((item) => [item.kind, item]));\n const draft: Record<string, UsageDraftItem> = {};\n for (const kind of kinds) {\n const existing = byKind.get(kind);\n draft[kind] = {\n currentValue: existing?.currentValue ?? null,\n unit: existing?.unit ?? defaultUnit(kind),\n lastReadingAt: existing?.lastReadingAt,\n unitLocked: existing != null,\n baseline: existing?.currentValue ?? null,\n };\n }\n return draft;\n}\n\nfunction toUsageValues(draft: Record<string, UsageDraftItem>): AXMAssetUsageValue[] {\n const values: AXMAssetUsageValue[] = [];\n for (const kind of USAGE_METER_KIND_ORDER) {\n const item = draft[kind];\n if (!item || item.currentValue == null || !Number.isFinite(item.currentValue)) {\n continue;\n }\n const currentValue =\n kind === AXMAssetIntervalKind.OperationCount ? Math.trunc(item.currentValue) : item.currentValue;\n if (currentValue < 0 || (item.baseline != null && currentValue < item.baseline)) {\n continue;\n }\n const reading: AXMAssetUsageValue = { kind, currentValue, unit: item.unit };\n const changed = item.baseline == null || currentValue !== item.baseline;\n if (changed) {\n reading.lastReadingAt = new Date().toISOString();\n } else if (item.lastReadingAt) {\n reading.lastReadingAt = item.lastReadingAt;\n }\n values.push(reading);\n }\n return values;\n}\n\n//#endregion\n\n//#region ----- Component -----\n\n@Component({\n selector: 'axm-asset-usage-values',\n templateUrl: './asset-usage-values.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AsyncPipe,\n FormsModule,\n AXTranslationModule,\n AXLabelComponent,\n AXNumberBoxModule,\n AXSelectionListModule,\n ],\n host: { class: 'block' },\n})\nexport class AXMAssetUsageValuesComponent {\n //#region ----- Inputs -----\n\n readonly supportedIntervalKinds = input<readonly string[]>([]);\n readonly value = input<AXMAssetUsageValue[] | null | undefined>(undefined);\n readonly disabled = input(false);\n /** Existing assets keep the stored unit. Create can still choose kilometre or mile. */\n readonly lockUnits = input(false);\n\n //#endregion\n\n //#region ----- Outputs -----\n\n readonly valueChange = output<AXMAssetUsageValue[]>();\n\n //#endregion\n\n //#region ----- Constants -----\n\n protected readonly emptyKey = `${AXM_ASSET_USAGE_I18N}.empty`;\n protected readonly distanceUnits: UsageChoice[] = [\n { id: AXMAssetIntervalUnit.Kilometer, text: USAGE_UNIT_LABEL_KEYS[AXMAssetIntervalUnit.Kilometer] },\n { id: AXMAssetIntervalUnit.Mile, text: USAGE_UNIT_LABEL_KEYS[AXMAssetIntervalUnit.Mile] },\n ];\n\n //#endregion\n\n //#region ----- State Signals -----\n\n private readonly draft = signal<Record<string, UsageDraftItem>>({});\n private lastEmitted = '';\n private lastSupportedKey = '';\n private lastHydrated = '';\n\n //#endregion\n\n //#region ----- Computed Properties -----\n\n protected readonly fields = computed<UsageField[]>(() => {\n const draft = this.draft();\n const fields: UsageField[] = [];\n for (const kind of USAGE_METER_KIND_ORDER) {\n const item = draft[kind];\n if (!item) {\n continue;\n }\n fields.push({\n kind,\n labelKey: USAGE_KIND_LABEL_KEYS[kind],\n currentValue: item.currentValue,\n unit: item.unit,\n unitSelectable:\n kind === AXMAssetIntervalKind.Distance && !item.unitLocked && !this.lockUnits(),\n minValue: item.baseline ?? 0,\n decimals: kind === AXMAssetIntervalKind.OperationCount ? 0 : 2,\n unitLabelKey: USAGE_UNIT_LABEL_KEYS[item.unit],\n });\n }\n return fields;\n });\n\n protected readonly showEmpty = computed(() => {\n if (this.fields().length > 0) {\n return false;\n }\n const kinds = this.supportedIntervalKinds();\n return !kinds.includes(AXMAssetIntervalKind.Schedule);\n });\n\n //#endregion\n\n //#region ----- Lifecycle -----\n\n constructor() {\n effect(() => {\n const supported = this.supportedIntervalKinds();\n const stored = readAssetUsageValues(this.value());\n const supportedKey = [...supported].sort().join('|');\n const token = `${supportedKey}::${stable(stored)}`;\n if (this.lastEmitted && stable(stored) === this.lastEmitted && supportedKey === this.lastSupportedKey) {\n return;\n }\n if (token === this.lastHydrated) {\n return;\n }\n this.lastHydrated = token;\n this.lastSupportedKey = supportedKey;\n this.draft.set(buildDraft(kindsToShow(supported, stored), stored));\n });\n }\n\n //#endregion\n\n //#region ----- Event Handlers -----\n\n protected onValue(kind: AXMAssetUsageKind, event: AXValueChangedEvent): void {\n if (!event.isUserInteraction || this.disabled() || !isUsageMeterKind(kind)) {\n return;\n }\n const currentValue = typeof event.value === 'number' && Number.isFinite(event.value) ? event.value : null;\n const draft = this.draft();\n const item = draft[kind];\n if (!item || item.currentValue === currentValue) {\n return;\n }\n this.commit({ ...draft, [kind]: { ...item, currentValue } });\n }\n\n protected onDistanceUnit(event: AXValueChangedEvent): void {\n if (!event.isUserInteraction || this.disabled()) {\n return;\n }\n const unit = readChoiceId(event.value);\n if (!isAXMAssetUsageUnitForKind(AXMAssetIntervalKind.Distance, unit as AXMAssetIntervalUnit)) {\n return;\n }\n const draft = this.draft();\n const item = draft[AXMAssetIntervalKind.Distance];\n if (!item || item.unitLocked || this.lockUnits() || item.unit === unit) {\n return;\n }\n this.commit({\n ...draft,\n [AXMAssetIntervalKind.Distance]: { ...item, unit: unit as AXMAssetIntervalUnit },\n });\n }\n\n //#endregion\n\n //#region ----- Draft -----\n\n private commit(draft: Record<string, UsageDraftItem>): void {\n this.draft.set(draft);\n const values = toUsageValues(draft);\n this.lastEmitted = stable(values);\n this.valueChange.emit(values);\n }\n\n //#endregion\n}\n\n//#endregion\n","<!-- ----- No supported interval kinds on the asset type ----- -->\n@if (showEmpty()) {\n <p class=\"ax-text-muted\">{{ emptyKey | translate | async }}</p>\n}\n\n@for (field of fields(); track field.kind) {\n <div class=\"mt-3 flex flex-col gap-2\">\n <ax-label>{{ field.labelKey | translate | async }}</ax-label>\n <div class=\"flex flex-wrap items-center gap-3\">\n <ax-number-box\n class=\"w-36\"\n [minValue]=\"field.minValue\"\n [decimals]=\"field.decimals\"\n [ngModel]=\"field.currentValue\"\n [disabled]=\"disabled()\"\n [showSpinButtons]=\"false\"\n (onValueChanged)=\"onValue(field.kind, $event)\"\n ></ax-number-box>\n <!-- ----- Distance unit can be chosen only before a reading is stored ----- -->\n @if (field.unitSelectable) {\n <ax-selection-list\n [items]=\"distanceUnits\"\n [ngModel]=\"field.unit\"\n [disabled]=\"disabled()\"\n direction=\"horizontal\"\n [multiple]=\"false\"\n [showControl]=\"true\"\n valueField=\"id\"\n textField=\"text\"\n (onValueChanged)=\"onDistanceUnit($event)\"\n >\n <ng-template #itemTemplate let-item>\n <span>{{ item.text | translate | async }}</span>\n </ng-template>\n </ax-selection-list>\n }\n <!-- ----- Saved or fixed unit stays beside the number and is not part of the input ----- -->\n @else {\n <span class=\"ax-text-muted\">({{ field.unitLabelKey | translate | async }})</span>\n }\n </div>\n </div>\n}\n","//#region ----- Imports -----\n\nimport { AXPValueWidgetComponent } from '@acorex-platform/framework-client/layout/widget-core';\nimport { readAssetUsageValues, type AXMAssetUsageValue } from '@acorex-platform/module-asset-management-client/contracts';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\nimport { AXMAssetUsageValuesComponent } from './asset-usage-values.component';\nimport { readAssetUsageIntervalKinds } from './asset-usage-values.kinds';\n\n//#endregion\n\n//#region ----- Component -----\n\n@Component({\n selector: 'axm-asset-usage-values-widget-edit',\n template: `\n <axm-asset-usage-values\n [supportedIntervalKinds]=\"supportedKinds()\"\n [value]=\"currentValue()\"\n [disabled]=\"isDisabled()\"\n [lockUnits]=\"lockUnits()\"\n (valueChange)=\"onUsageValuesChange($event)\"\n />\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXMAssetUsageValuesComponent],\n})\nexport class AXMAssetUsageValuesWidgetEditComponent extends AXPValueWidgetComponent<AXMAssetUsageValue[] | null> {\n //#region ----- Computed Properties -----\n\n protected readonly supportedKinds = computed(() =>\n readAssetUsageIntervalKinds(this.options(), (path) => this.contextService.getValue(path)),\n );\n\n protected readonly currentValue = computed(() => readAssetUsageValues(this.getValue()));\n\n protected readonly isDisabled = computed(() => Boolean(this.options()['disabled']));\n\n protected readonly lockUnits = computed(() => {\n const id = this.contextService.getValue('id');\n return id != null && id !== '';\n });\n\n //#endregion\n\n //#region ----- Event Handlers -----\n\n protected onUsageValuesChange(values: AXMAssetUsageValue[]): void {\n this.setValue(values);\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAuDA;AAEA;AAEA,SAAS,WAAW,CAAC,IAAuB,EAAA;IAC1C,QAAQ,IAAI;QACV,KAAK,oBAAoB,CAAC,QAAQ;YAChC,OAAO,oBAAoB,CAAC,SAAS;QACvC,KAAK,oBAAoB,CAAC,cAAc;YACtC,OAAO,oBAAoB,CAAC,IAAI;QAClC,KAAK,oBAAoB,CAAC,cAAc;YACtC,OAAO,oBAAoB,CAAC,SAAS;;AAE3C;AAEA,SAAS,MAAM,CAAC,KAAc,EAAA;AAC5B,IAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;AAC9B;AAEA,SAAS,YAAY,CAAC,KAAc,EAAA;AAClC,IAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,QAAA,OAAO,KAAK;IACd;AACA,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,QAAA,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/B;AACA,IAAA,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,IAAI,IAAI,KAAK,IAAI,OAAQ,KAAyB,CAAC,EAAE,KAAK,QAAQ,EAAE;QAC5G,OAAQ,KAAwB,CAAC,EAAE;IACrC;AACA,IAAA,OAAO,EAAE;AACX;AAEA,SAAS,WAAW,CAAC,SAA4B,EAAE,MAAqC,EAAA;AACtF,IAAA,MAAM,eAAe,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACzF,IAAA,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;AAC9B,QAAA,OAAO,eAAe;IACxB;IACA,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAC3F;AAEA,SAAS,UAAU,CAAC,KAAmC,EAAE,MAAqC,EAAA;IAC5F,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAmC,EAAE;AAChD,IAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,GAAG;AACZ,YAAA,YAAY,EAAE,QAAQ,EAAE,YAAY,IAAI,IAAI;YAC5C,IAAI,EAAE,QAAQ,EAAE,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC;YACzC,aAAa,EAAE,QAAQ,EAAE,aAAa;YACtC,UAAU,EAAE,QAAQ,IAAI,IAAI;AAC5B,YAAA,QAAQ,EAAE,QAAQ,EAAE,YAAY,IAAI,IAAI;SACzC;IACH;AACA,IAAA,OAAO,KAAK;AACd;AAEA,SAAS,aAAa,CAAC,KAAqC,EAAA;IAC1D,MAAM,MAAM,GAAyB,EAAE;AACvC,IAAA,KAAK,MAAM,IAAI,IAAI,sBAAsB,EAAE;AACzC,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC7E;QACF;QACA,MAAM,YAAY,GAChB,IAAI,KAAK,oBAAoB,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,YAAY;AAClG,QAAA,IAAI,YAAY,GAAG,CAAC,KAAK,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC/E;QACF;AACA,QAAA,MAAM,OAAO,GAAuB,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;AAC3E,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,YAAY,KAAK,IAAI,CAAC,QAAQ;QACvE,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAClD;AAAO,aAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AAC7B,YAAA,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa;QAC5C;AACA,QAAA,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;IACtB;AACA,IAAA,OAAO,MAAM;AACf;AAEA;AAEA;MAgBa,4BAA4B,CAAA;;;AAyEvC,IAAA,WAAA,GAAA;;QAtES,IAAA,CAAA,sBAAsB,GAAG,KAAK,CAAoB,EAAE;mGAAC;QACrD,IAAA,CAAA,KAAK,GAAG,KAAK,CAA0C,SAAS;kFAAC;QACjE,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,KAAK;qFAAC;;QAEvB,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,KAAK;sFAAC;;;QAMxB,IAAA,CAAA,WAAW,GAAG,MAAM,EAAwB;;;AAMlC,QAAA,IAAA,CAAA,QAAQ,GAAG,CAAA,EAAG,oBAAoB,CAAA,MAAA,CAAQ;AAC1C,QAAA,IAAA,CAAA,aAAa,GAAkB;AAChD,YAAA,EAAE,EAAE,EAAE,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,qBAAqB,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE;AACnG,YAAA,EAAE,EAAE,EAAE,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,qBAAqB,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE;SAC1F;;;QAMgB,IAAA,CAAA,KAAK,GAAG,MAAM,CAAiC,EAAE;kFAAC;QAC3D,IAAA,CAAA,WAAW,GAAG,EAAE;QAChB,IAAA,CAAA,gBAAgB,GAAG,EAAE;QACrB,IAAA,CAAA,YAAY,GAAG,EAAE;;;AAMN,QAAA,IAAA,CAAA,MAAM,GAAG,QAAQ,CAAe,MAAK;AACtD,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;YAC1B,MAAM,MAAM,GAAiB,EAAE;AAC/B,YAAA,KAAK,MAAM,IAAI,IAAI,sBAAsB,EAAE;AACzC,gBAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;gBACxB,IAAI,CAAC,IAAI,EAAE;oBACT;gBACF;gBACA,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI;AACJ,oBAAA,QAAQ,EAAE,qBAAqB,CAAC,IAAI,CAAC;oBACrC,YAAY,EAAE,IAAI,CAAC,YAAY;oBAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,oBAAA,cAAc,EACZ,IAAI,KAAK,oBAAoB,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACjF,oBAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;AAC5B,oBAAA,QAAQ,EAAE,IAAI,KAAK,oBAAoB,CAAC,cAAc,GAAG,CAAC,GAAG,CAAC;AAC9D,oBAAA,YAAY,EAAE,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/C,iBAAA,CAAC;YACJ;AACA,YAAA,OAAO,MAAM;QACf,CAAC;mFAAC;AAEiB,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;YAC3C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5B,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,sBAAsB,EAAE;YAC3C,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC;QACvD,CAAC;sFAAC;QAOA,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,EAAE;YAC/C,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;AACjD,YAAA,MAAM,YAAY,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;YACpD,MAAM,KAAK,GAAG,CAAA,EAAG,YAAY,CAAA,EAAA,EAAK,MAAM,CAAC,MAAM,CAAC,CAAA,CAAE;AAClD,YAAA,IAAI,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,WAAW,IAAI,YAAY,KAAK,IAAI,CAAC,gBAAgB,EAAE;gBACrG;YACF;AACA,YAAA,IAAI,KAAK,KAAK,IAAI,CAAC,YAAY,EAAE;gBAC/B;YACF;AACA,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,YAAA,IAAI,CAAC,gBAAgB,GAAG,YAAY;AACpC,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;AACpE,QAAA,CAAC,CAAC;IACJ;;;IAMU,OAAO,CAAC,IAAuB,EAAE,KAA0B,EAAA;AACnE,QAAA,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;YAC1E;QACF;QACA,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI;AACzG,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,YAAY,EAAE;YAC/C;QACF;AACA,QAAA,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC;IAC9D;AAEU,IAAA,cAAc,CAAC,KAA0B,EAAA;QACjD,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;YAC/C;QACF;QACA,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;QACtC,IAAI,CAAC,0BAA0B,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAA4B,CAAC,EAAE;YAC5F;QACF;AACA,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;QAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,oBAAoB,CAAC,QAAQ,CAAC;AACjD,QAAA,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YACtE;QACF;QACA,IAAI,CAAC,MAAM,CAAC;AACV,YAAA,GAAG,KAAK;AACR,YAAA,CAAC,oBAAoB,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,IAA4B,EAAE;AACjF,SAAA,CAAC;IACJ;;;AAMQ,IAAA,MAAM,CAAC,KAAqC,EAAA;AAClD,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;AACrB,QAAA,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC;AACnC,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;AACjC,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;IAC/B;8GAxIW,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,sBAAA,EAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,UAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzJzC,qkDA2CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDsGI,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACX,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,gBAAgB,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,KAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAChB,iBAAiB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,aAAA,EAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,SAAA,EAAA,YAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,qBAAqB,kXALrB,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FASA,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAdxC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,EAAA,eAAA,EAEjB,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,SAAS;wBACT,WAAW;wBACX,mBAAmB;wBACnB,gBAAgB;wBAChB,iBAAiB;wBACjB,qBAAqB;AACtB,qBAAA,EAAA,IAAA,EACK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAA,QAAA,EAAA,qkDAAA,EAAA;;;AEvJ1B;AASA;AAEA;AAgBM,MAAO,sCAAuC,SAAQ,uBAAoD,CAAA;AAdhH,IAAA,WAAA,GAAA;;;QAiBqB,IAAA,CAAA,cAAc,GAAG,QAAQ,CAAC,MAC3C,2BAA2B,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;2FAC1F;AAEkB,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;yFAAC;AAEpE,QAAA,IAAA,CAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC;uFAAC;AAEhE,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;YAC3C,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC7C,YAAA,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,KAAK,EAAE;QAChC,CAAC;sFAAC;AAWH,IAAA;;;AALW,IAAA,mBAAmB,CAAC,MAA4B,EAAA;AACxD,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IACvB;8GAtBW,sCAAsC,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sCAAsC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAZvC;;;;;;;;AAQT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAES,4BAA4B,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAE3B,sCAAsC,EAAA,UAAA,EAAA,CAAA;kBAdlD,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oCAAoC;AAC9C,oBAAA,QAAQ,EAAE;;;;;;;;AAQT,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,OAAO,EAAE,CAAC,4BAA4B,CAAC;AACxC,iBAAA;;;"}
|
|
@@ -2,11 +2,11 @@ import { AXLabelComponent } from '@acorex/components/label';
|
|
|
2
2
|
import * as i4 from '@acorex/core/translation';
|
|
3
3
|
import { AXTranslationModule } from '@acorex/core/translation';
|
|
4
4
|
import { AXPValueWidgetComponent } from '@acorex-platform/framework-client/layout/widget-core';
|
|
5
|
-
import {
|
|
5
|
+
import { readAssetUsageValues, AXMAssetIntervalKind } from '@acorex-platform/module-asset-management-client/contracts';
|
|
6
6
|
import { AsyncPipe } from '@angular/common';
|
|
7
7
|
import * as i0 from '@angular/core';
|
|
8
8
|
import { computed, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
9
|
-
import { a as AXM_ASSET_USAGE_I18N, r as readAssetUsageIntervalKinds, o as orderedUsageMeterKinds, U as USAGE_UNIT_LABEL_KEYS, b as USAGE_KIND_LABEL_KEYS } from './acorex-platform-module-asset-management-client-acorex-platform-module-asset-management-client-
|
|
9
|
+
import { a as AXM_ASSET_USAGE_I18N, r as readAssetUsageIntervalKinds, o as orderedUsageMeterKinds, U as USAGE_UNIT_LABEL_KEYS, b as USAGE_KIND_LABEL_KEYS } from './acorex-platform-module-asset-management-client-acorex-platform-module-asset-management-client-BGF5UnLv.mjs';
|
|
10
10
|
|
|
11
11
|
//#region ----- Imports -----
|
|
12
12
|
//#endregion
|
|
@@ -16,14 +16,11 @@ class AXMAssetUsageValuesWidgetViewComponent extends AXPValueWidgetComponent {
|
|
|
16
16
|
super(...arguments);
|
|
17
17
|
//#region ----- Constants -----
|
|
18
18
|
this.emptyKey = `${AXM_ASSET_USAGE_I18N}.empty`;
|
|
19
|
-
this.dateNoteKey = `${AXM_ASSET_USAGE_I18N}.date-note`;
|
|
20
19
|
this.noReadingKey = `${AXM_ASSET_USAGE_I18N}.no-reading`;
|
|
21
20
|
//#endregion
|
|
22
21
|
//#region ----- Computed Properties -----
|
|
23
22
|
this.supportedKinds = computed(() => readAssetUsageIntervalKinds(this.options(), (path) => this.contextService.getValue(path)), /* @ts-ignore */
|
|
24
23
|
...(ngDevMode ? [{ debugName: "supportedKinds" }] : /* istanbul ignore next */ []));
|
|
25
|
-
this.showDateNote = computed(() => this.supportedKinds().includes(AXMAssetIntervalKind.Date), /* @ts-ignore */
|
|
26
|
-
...(ngDevMode ? [{ debugName: "showDateNote" }] : /* istanbul ignore next */ []));
|
|
27
24
|
this.rows = computed(() => {
|
|
28
25
|
const stored = readAssetUsageValues(this.getValue());
|
|
29
26
|
const byKind = new Map(stored.map((item) => [item.kind, item]));
|
|
@@ -40,16 +37,22 @@ class AXMAssetUsageValuesWidgetViewComponent extends AXPValueWidgetComponent {
|
|
|
40
37
|
});
|
|
41
38
|
}, /* @ts-ignore */
|
|
42
39
|
...(ngDevMode ? [{ debugName: "rows" }] : /* istanbul ignore next */ []));
|
|
43
|
-
this.showEmpty = computed(() =>
|
|
40
|
+
this.showEmpty = computed(() => {
|
|
41
|
+
if (this.rows().length > 0) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
const kinds = this.supportedKinds();
|
|
45
|
+
return !kinds.includes(AXMAssetIntervalKind.Schedule);
|
|
46
|
+
}, /* @ts-ignore */
|
|
44
47
|
...(ngDevMode ? [{ debugName: "showEmpty" }] : /* istanbul ignore next */ []));
|
|
45
48
|
}
|
|
46
49
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMAssetUsageValuesWidgetViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
47
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMAssetUsageValuesWidgetViewComponent, isStandalone: true, selector: "axm-asset-usage-values-widget-view", usesInheritance: true, ngImport: i0, template: "<!-- ----- Asset type has no
|
|
50
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXMAssetUsageValuesWidgetViewComponent, isStandalone: true, selector: "axm-asset-usage-values-widget-view", usesInheritance: true, ngImport: i0, template: "<!-- ----- Asset type has no supported interval kinds ----- -->\n@if (showEmpty()) {\n <span class=\"ax-text-muted\">{{ emptyKey | translate | async }}</span>\n}\n\n@for (row of rows(); track row.kind) {\n <div class=\"mt-2\">\n <ax-label>{{ row.labelKey | translate | async }}</ax-label>\n <!-- ----- Stored cumulative reading ----- -->\n @if (row.currentValue != null) {\n <span class=\"ms-2\">{{ row.currentValue }}</span>\n <span class=\"ms-2 ax-text-muted\">({{ row.unitKey | translate | async }})</span>\n }\n <!-- ----- Supported kind with no reading yet ----- -->\n @else {\n <span class=\"ms-2 ax-text-muted\">{{ noReadingKey | translate | async }}</span>\n }\n </div>\n}\n", dependencies: [{ kind: "ngmodule", type: AXTranslationModule }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: i4.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
48
51
|
}
|
|
49
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXMAssetUsageValuesWidgetViewComponent, decorators: [{
|
|
50
53
|
type: Component,
|
|
51
|
-
args: [{ selector: 'axm-asset-usage-values-widget-view', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AsyncPipe, AXTranslationModule, AXLabelComponent], template: "<!-- ----- Asset type has no
|
|
54
|
+
args: [{ selector: 'axm-asset-usage-values-widget-view', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AsyncPipe, AXTranslationModule, AXLabelComponent], template: "<!-- ----- Asset type has no supported interval kinds ----- -->\n@if (showEmpty()) {\n <span class=\"ax-text-muted\">{{ emptyKey | translate | async }}</span>\n}\n\n@for (row of rows(); track row.kind) {\n <div class=\"mt-2\">\n <ax-label>{{ row.labelKey | translate | async }}</ax-label>\n <!-- ----- Stored cumulative reading ----- -->\n @if (row.currentValue != null) {\n <span class=\"ms-2\">{{ row.currentValue }}</span>\n <span class=\"ms-2 ax-text-muted\">({{ row.unitKey | translate | async }})</span>\n }\n <!-- ----- Supported kind with no reading yet ----- -->\n @else {\n <span class=\"ms-2 ax-text-muted\">{{ noReadingKey | translate | async }}</span>\n }\n </div>\n}\n" }]
|
|
52
55
|
}] });
|
|
53
56
|
|
|
54
57
|
export { AXMAssetUsageValuesWidgetViewComponent };
|
|
55
|
-
//# sourceMappingURL=acorex-platform-module-asset-management-client-asset-usage-values-widget-view.component-
|
|
58
|
+
//# sourceMappingURL=acorex-platform-module-asset-management-client-asset-usage-values-widget-view.component-DSGfqZeL.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-asset-management-client-asset-usage-values-widget-view.component-DSGfqZeL.mjs","sources":["../../../../libs/modules/asset-management/client/src/lib/features/asset-usage-values/asset-usage-values-widget-view.component.ts","../../../../libs/modules/asset-management/client/src/lib/features/asset-usage-values/asset-usage-values-widget-view.component.html"],"sourcesContent":["//#region ----- Imports -----\n\nimport { AXLabelComponent } from '@acorex/components/label';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPValueWidgetComponent } from '@acorex-platform/framework-client/layout/widget-core';\nimport {\n AXMAssetIntervalKind,\n readAssetUsageValues,\n type AXMAssetUsageValue,\n} from '@acorex-platform/module-asset-management-client/contracts';\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed } from '@angular/core';\n\nimport {\n AXM_ASSET_USAGE_I18N,\n USAGE_KIND_LABEL_KEYS,\n USAGE_UNIT_LABEL_KEYS,\n orderedUsageMeterKinds,\n readAssetUsageIntervalKinds,\n} from './asset-usage-values.kinds';\n\n//#endregion\n\n//#region ----- Types -----\n\ninterface UsageViewRow {\n kind: string;\n labelKey: string;\n currentValue: number | null;\n unitKey: string;\n}\n\n//#endregion\n\n//#region ----- Component -----\n\n@Component({\n selector: 'axm-asset-usage-values-widget-view',\n templateUrl: './asset-usage-values-widget-view.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AsyncPipe, AXTranslationModule, AXLabelComponent],\n})\nexport class AXMAssetUsageValuesWidgetViewComponent extends AXPValueWidgetComponent<AXMAssetUsageValue[] | null> {\n //#region ----- Constants -----\n\n protected readonly emptyKey = `${AXM_ASSET_USAGE_I18N}.empty`;\n protected readonly noReadingKey = `${AXM_ASSET_USAGE_I18N}.no-reading`;\n\n //#endregion\n\n //#region ----- Computed Properties -----\n\n private readonly supportedKinds = computed(() =>\n readAssetUsageIntervalKinds(this.options(), (path) => this.contextService.getValue(path)),\n );\n\n protected readonly rows = computed<UsageViewRow[]>(() => {\n const stored = readAssetUsageValues(this.getValue());\n const byKind = new Map(stored.map((item) => [item.kind, item]));\n const supportedMeters = orderedUsageMeterKinds(this.supportedKinds());\n const kinds = supportedMeters.length > 0 ? supportedMeters : stored.map((item) => item.kind);\n return kinds.map((kind) => {\n const reading = byKind.get(kind);\n return {\n kind,\n labelKey: USAGE_KIND_LABEL_KEYS[kind] ?? '',\n currentValue: reading?.currentValue ?? null,\n unitKey: reading ? USAGE_UNIT_LABEL_KEYS[reading.unit] : '',\n };\n });\n });\n\n protected readonly showEmpty = computed(() => {\n if (this.rows().length > 0) {\n return false;\n }\n const kinds = this.supportedKinds();\n return !kinds.includes(AXMAssetIntervalKind.Schedule);\n });\n\n //#endregion\n}\n\n//#endregion\n","<!-- ----- Asset type has no supported interval kinds ----- -->\n@if (showEmpty()) {\n <span class=\"ax-text-muted\">{{ emptyKey | translate | async }}</span>\n}\n\n@for (row of rows(); track row.kind) {\n <div class=\"mt-2\">\n <ax-label>{{ row.labelKey | translate | async }}</ax-label>\n <!-- ----- Stored cumulative reading ----- -->\n @if (row.currentValue != null) {\n <span class=\"ms-2\">{{ row.currentValue }}</span>\n <span class=\"ms-2 ax-text-muted\">({{ row.unitKey | translate | async }})</span>\n }\n <!-- ----- Supported kind with no reading yet ----- -->\n @else {\n <span class=\"ms-2 ax-text-muted\">{{ noReadingKey | translate | async }}</span>\n }\n </div>\n}\n"],"names":["i1"],"mappings":"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"}
|
package/fesm2022/acorex-platform-module-asset-management-client-contracts-entities-asset-type.mjs
CHANGED
|
@@ -5,6 +5,7 @@ import { createAllQueryView, entityMasterCrudActions, entityMasterRecordActions,
|
|
|
5
5
|
/** Measurement capabilities an asset type can use for maintenance intervals. Combinations are multiple values, not extra enum members. */
|
|
6
6
|
var AXMAssetIntervalKind;
|
|
7
7
|
(function (AXMAssetIntervalKind) {
|
|
8
|
+
AXMAssetIntervalKind["Schedule"] = "schedule";
|
|
8
9
|
AXMAssetIntervalKind["Date"] = "date";
|
|
9
10
|
AXMAssetIntervalKind["Distance"] = "distance";
|
|
10
11
|
AXMAssetIntervalKind["OperatingHours"] = "operating-hours";
|
|
@@ -150,6 +151,10 @@ const RootConfig = {
|
|
|
150
151
|
const ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY = 'asset-type-components-page';
|
|
151
152
|
|
|
152
153
|
const supportedIntervalKindDataSource = [
|
|
154
|
+
{
|
|
155
|
+
id: AXMAssetIntervalKind.Schedule,
|
|
156
|
+
title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.schedule',
|
|
157
|
+
},
|
|
153
158
|
{
|
|
154
159
|
id: AXMAssetIntervalKind.Date,
|
|
155
160
|
title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.date',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-asset-management-client-contracts-entities-asset-type.mjs","sources":["../../../../libs/modules/asset-management/contracts/src/asset.interval-kind.ts","../../../../libs/modules/asset-management/contracts/src/root-config.ts","../../../../libs/modules/asset-management/contracts/src/ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/asset-management/contracts/src/entities/asset-type/asset-type.entity.ts","../../../../libs/modules/asset-management/contracts/src/acorex-platform-module-asset-management-client-contracts-entities-asset-type.ts"],"sourcesContent":["//#region ---- Interval kind ----\n\n/** Measurement capabilities an asset type can use for maintenance intervals. Combinations are multiple values, not extra enum members. */\nexport enum AXMAssetIntervalKind {\n Date = 'date',\n Distance = 'distance',\n OperatingHours = 'operating-hours',\n OperationCount = 'operation-count',\n}\n\nconst ASSET_INTERVAL_KINDS = new Set<string>(Object.values(AXMAssetIntervalKind));\n\nexport function isAXMAssetIntervalKind(value: string): value is AXMAssetIntervalKind {\n return ASSET_INTERVAL_KINDS.has(value);\n}\n\n/**\n * Reads `supportedIntervalKinds` from a stored row or a select-editor value.\n * Missing or empty input is `[]`. A non-array, or any item that is not a known kind, is invalid.\n * Select rows `{ id }` are accepted and reduced to the id.\n */\nexport function resolveSupportedIntervalKinds(value: unknown): {\n kinds: AXMAssetIntervalKind[];\n invalid: boolean;\n} {\n if (value == null || value === '') {\n return { kinds: [], invalid: false };\n }\n\n if (!Array.isArray(value)) {\n return { kinds: [], invalid: true };\n }\n\n const kinds: AXMAssetIntervalKind[] = [];\n for (const item of value) {\n const raw =\n typeof item === 'string'\n ? item\n : item && typeof item === 'object' && 'id' in item && typeof (item as { id: unknown }).id === 'string'\n ? (item as { id: string }).id\n : '';\n\n if (!isAXMAssetIntervalKind(raw)) {\n return { kinds: [], invalid: true };\n }\n\n if (!kinds.includes(raw)) {\n kinds.push(raw);\n }\n }\n\n return { kinds, invalid: false };\n}\n\n//#endregion\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","/** Registry key for the asset type Components custom page tab. */\nexport const ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY = 'asset-type-components-page';\n","import {\n AXPSystemActionType,\n AXPWidgetsCatalog,\n} from '@acorex-platform/framework-shared/core';\nimport {\n AXPEntity,\n AXPEntityCommandScope,\n createAllQueryView,\n entityDetailsCrudActions,\n entityDetailsSimpleCondition,\n entityMasterCrudActions,\n entityMasterRecordActions,\n} from '@acorex-platform/framework-shared/entity';\n//#region ---- Imports ----\nimport { AXMAssetIntervalKind } from '../../asset.interval-kind';\nimport { RootConfig } from '../../root-config';\nimport { ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY } from '../../ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY';\n\nconst supportedIntervalKindDataSource = [\n {\n id: AXMAssetIntervalKind.Date,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.date',\n },\n {\n id: AXMAssetIntervalKind.Distance,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.distance',\n },\n {\n id: AXMAssetIntervalKind.OperatingHours,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.operating-hours',\n },\n {\n id: AXMAssetIntervalKind.OperationCount,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.operation-count',\n },\n];\n\nconst maintenanceFieldVisible = `{{ [true, \"true\"].includes(context.eval(\"hasMaintenance\")) }}`;\n\n//#endregion\n\n//#region ---- Entity Factory ----\n\n/**\n * Entity definition aligned with {@link AXMAssetManagementAssetTypeEntityModel}.\n * Categories use `categoryIds` (see category plugin `propertyName`). `maintenanceTypeIds` is shown when `hasMaintenance` is enabled.\n */\nexport async function factoryAssetType(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.assetType.name,\n title: RootConfig.entities.assetType.title,\n icon: RootConfig.entities.assetType.icon,\n searchTags: [\n 'asset-type',\n 'type',\n 'classification',\n 'category',\n 'template',\n 'maintenance',\n 'inspection',\n 'نوع دارایی',\n 'انواع دارایی',\n 'دستهبندی دارایی',\n 'قالب',\n 'نوع',\n 'تصنيف',\n ],\n plugins: [\n // { name: 'unique-fields', options: { fields: 'code', scope: 'global' } },\n { name: 'history' },\n {\n name: 'category',\n options: { appearance: { icon: true, color: true } },\n },\n {\n name: 'meta-data-builder',\n options: {\n display: 'page',\n order: 3,\n },\n },\n // { name: 'identifier', options: { field: 'code', rule: 'asset-type-code' } },\n { name: 'reports' },\n ],\n pages: [\n {\n componentKey: ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY,\n field: 'components',\n title:\n '@asset-management:assetTypes.entities.assetType.components.components.title',\n icon: 'fa-light fa-sitemap',\n layout: { order: 2, position: 'after' },\n options: { order: 2, allowEditSection: false },\n },\n ],\n relatedEntities: [\n {\n entity: 'MaintenanceManagement.ActivityTypeAssetType',\n title:\n '@asset-management:assetTypes.entities.assetType.related-entities.activity-type-asset-types.title',\n icon: 'fa-light fa-link',\n hidden: `{{ ![true, \"true\", 1, \"1\"].includes(context.eval(\"hasMaintenance\")) }}`,\n conditions: [entityDetailsSimpleCondition('assetTypeId')],\n actions: [...entityDetailsCrudActions('assetTypeId')],\n layout: { type: 'page-list', position: 'after', order: 4 },\n },\n {\n entity: 'MaintenanceManagement.MaintenanceTemplate',\n title:\n '@asset-management:assetTypes.entities.assetType.related-entities.maintenance-templates.title',\n icon: 'fa-light fa-clipboard-list',\n hidden: `{{ ![true, \"true\", 1, \"1\"].includes(context.eval(\"hasMaintenance\")) }}`,\n conditions: [entityDetailsSimpleCondition('assetTypeId')],\n actions: [\n {\n title: '@general:actions.create.title',\n command: {\n name: 'Entity:Create',\n options: {\n process: {\n redirect: false,\n canCreateNewOne: true,\n data: {\n assetTypeId: '{{ context.eval(\"id\") }}',\n assetType: {\n id: '{{ context.eval(\"id\") }}',\n title:\n '{{ context.eval(\"title\", { pipes: [\"translate\"] }) }}',\n maintenanceTypeIds:\n '{{ context.eval(\"maintenanceTypeIds\") }}',\n },\n },\n },\n },\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n },\n ...entityDetailsCrudActions('assetTypeId', { create: false }),\n ],\n layout: { type: 'page-list', position: 'after', order: 6 },\n },\n ],\n formats: {\n individual: RootConfig.entities.assetType.title,\n plural: RootConfig.entities.assetType.titlePlural,\n searchResult: { title: '{{ title }}' },\n displayName: '@general:terms.common.overview',\n },\n groups: [\n {\n id: 'basic-info',\n title:\n '@asset-management:assetTypes.entities.assetType.groups.basic-info',\n },\n {\n id: 'maintenance-info',\n title:\n '@asset-management:assetTypes.entities.assetType.groups.maintenance-info',\n },\n {\n id: 'components',\n title:\n '@asset-management:assetTypes.entities.assetType.groups.components',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n schema: {\n dataType: 'uuid',\n visible: false,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n // {\n // name: 'code',\n // title: '@asset-management:assetTypes.entities.assetType.fields.code.title',\n // groupId: 'basic-info',\n // schema: {\n // dataType: 'string',\n // unique: { enabled: true },\n // interface: {\n // type: AXPWidgetsCatalog.text,\n // options: {\n // disabled: true,\n // },\n // },\n // },\n // options: {\n // sort: { enabled: true },\n // filter: { advance: { enabled: true }, inline: { enabled: true } },\n // },\n // validations: [{ rule: 'required' }],\n // },\n {\n name: 'name',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.name.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'title',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.title.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'hasMaintenance',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.hasMaintenance.title',\n groupId: 'maintenance-info',\n schema: {\n dataType: 'boolean',\n defaultValue: false,\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'maintenanceTypeIds',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.maintenanceTypeIds.title',\n groupId: 'maintenance-info',\n schema: {\n dataType: 'array',\n nullable: true,\n defaultValue: [],\n visible: maintenanceFieldVisible,\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'MaintenanceManagement.MaintenanceType',\n textField: 'title',\n valueField: 'id',\n look: 'drop-down',\n multiple: true,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n },\n {\n name: 'supportedIntervalKinds',\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.title',\n groupId: 'maintenance-info',\n schema: {\n dataType: 'array',\n nullable: true,\n defaultValue: [],\n visible: maintenanceFieldVisible,\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'id',\n textField: 'title',\n multiple: true,\n allowSearch: false,\n dataSource: supportedIntervalKindDataSource,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n },\n {\n name: 'description',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.description.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.largeText,\n options: {\n rows: 4,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n },\n {\n name: 'components',\n title:\n '@asset-management:assetTypes.entities.assetType.components.components.title',\n groupId: 'components',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'object',\n defaultValue: { sections: [] },\n visible: false,\n nullable: true,\n },\n },\n ],\n columns: [\n { name: 'name', options: { order: 1 } },\n { name: 'title', options: { order: 2 } },\n { name: 'description', options: { order: 3 } },\n {\n name: 'hasMaintenance',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.hasMaintenance.gridTitle',\n options: { order: 4 },\n },\n {\n name: 'maintenanceTypeIds',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.maintenanceTypeIds.gridTitle',\n options: { order: 5 },\n },\n {\n name: 'supportedIntervalKinds',\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.gridTitle',\n options: { order: 6 },\n },\n ],\n queries: {},\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info', order: 1 },\n { id: 'maintenance-info', order: 2 },\n ],\n properties: [\n {\n name: 'name',\n layout: { positions: { lg: { colSpan: 6, order: 2 } } },\n },\n {\n name: 'title',\n layout: { positions: { lg: { colSpan: 6, order: 3 } } },\n },\n {\n name: 'description',\n layout: { positions: { lg: { colSpan: 12, order: 4 } } },\n },\n {\n name: 'hasMaintenance',\n layout: { positions: { lg: { colSpan: 12, order: 5 } } },\n },\n {\n name: 'maintenanceTypeIds',\n layout: { positions: { lg: { colSpan: 12, order: 6 } } },\n },\n {\n name: 'supportedIntervalKinds',\n layout: { positions: { lg: { colSpan: 12, order: 7 } } },\n },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info', order: 1 },\n { id: 'maintenance-info', order: 2 },\n ],\n properties: [\n {\n name: 'name',\n layout: { positions: { lg: { colSpan: 6, order: 2 } } },\n },\n {\n name: 'title',\n layout: { positions: { lg: { colSpan: 6, order: 3 } } },\n },\n {\n name: 'description',\n layout: { positions: { lg: { colSpan: 12, order: 4 } } },\n },\n {\n name: 'hasMaintenance',\n layout: { positions: { lg: { colSpan: 12, order: 5 } } },\n },\n {\n name: 'maintenanceTypeIds',\n layout: { positions: { lg: { colSpan: 12, order: 6 } } },\n },\n {\n name: 'supportedIntervalKinds',\n layout: { positions: { lg: { colSpan: 12, order: 7 } } },\n },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'basic-info', order: 1 },\n { id: 'maintenance-info', order: 2 },\n ],\n properties: [\n // { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n {\n name: 'name',\n layout: { positions: { lg: { colSpan: 6, order: 2 } } },\n },\n {\n name: 'title',\n layout: { positions: { lg: { colSpan: 6, order: 3 } } },\n },\n {\n name: 'description',\n layout: { positions: { lg: { colSpan: 12, order: 4 } } },\n },\n {\n name: 'hasMaintenance',\n layout: { positions: { lg: { colSpan: 12, order: 5 } } },\n },\n {\n name: 'maintenanceTypeIds',\n layout: { positions: { lg: { colSpan: 12, order: 6 } } },\n },\n {\n name: 'supportedIntervalKinds',\n layout: { positions: { lg: { colSpan: 12, order: 7 } } },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] }),\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.asset-type';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-asset-management-client-contracts-entities-asset-type.mjs","sources":["../../../../libs/modules/asset-management/contracts/src/asset.interval-kind.ts","../../../../libs/modules/asset-management/contracts/src/root-config.ts","../../../../libs/modules/asset-management/contracts/src/ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY.ts","../../../../libs/modules/asset-management/contracts/src/entities/asset-type/asset-type.entity.ts","../../../../libs/modules/asset-management/contracts/src/acorex-platform-module-asset-management-client-contracts-entities-asset-type.ts"],"sourcesContent":["//#region ---- Interval kind ----\n\n/** Measurement capabilities an asset type can use for maintenance intervals. Combinations are multiple values, not extra enum members. */\nexport enum AXMAssetIntervalKind {\n Schedule = 'schedule',\n Date = 'date',\n Distance = 'distance',\n OperatingHours = 'operating-hours',\n OperationCount = 'operation-count',\n}\n\nconst ASSET_INTERVAL_KINDS = new Set<string>(Object.values(AXMAssetIntervalKind));\n\nexport function isAXMAssetIntervalKind(value: string): value is AXMAssetIntervalKind {\n return ASSET_INTERVAL_KINDS.has(value);\n}\n\n/**\n * Reads `supportedIntervalKinds` from a stored row or a select-editor value.\n * Missing or empty input is `[]`. A non-array, or any item that is not a known kind, is invalid.\n * Select rows `{ id }` are accepted and reduced to the id.\n */\nexport function resolveSupportedIntervalKinds(value: unknown): {\n kinds: AXMAssetIntervalKind[];\n invalid: boolean;\n} {\n if (value == null || value === '') {\n return { kinds: [], invalid: false };\n }\n\n if (!Array.isArray(value)) {\n return { kinds: [], invalid: true };\n }\n\n const kinds: AXMAssetIntervalKind[] = [];\n for (const item of value) {\n const raw =\n typeof item === 'string'\n ? item\n : item && typeof item === 'object' && 'id' in item && typeof (item as { id: unknown }).id === 'string'\n ? (item as { id: string }).id\n : '';\n\n if (!isAXMAssetIntervalKind(raw)) {\n return { kinds: [], invalid: true };\n }\n\n if (!kinds.includes(raw)) {\n kinds.push(raw);\n }\n }\n\n return { kinds, invalid: false };\n}\n\n//#endregion\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","/** Registry key for the asset type Components custom page tab. */\nexport const ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY = 'asset-type-components-page';\n","import {\n AXPSystemActionType,\n AXPWidgetsCatalog,\n} from '@acorex-platform/framework-shared/core';\nimport {\n AXPEntity,\n AXPEntityCommandScope,\n createAllQueryView,\n entityDetailsCrudActions,\n entityDetailsSimpleCondition,\n entityMasterCrudActions,\n entityMasterRecordActions,\n} from '@acorex-platform/framework-shared/entity';\n//#region ---- Imports ----\nimport { AXMAssetIntervalKind } from '../../asset.interval-kind';\nimport { RootConfig } from '../../root-config';\nimport { ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY } from '../../ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY';\n\nconst supportedIntervalKindDataSource = [\n {\n id: AXMAssetIntervalKind.Schedule,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.schedule',\n },\n {\n id: AXMAssetIntervalKind.Date,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.date',\n },\n {\n id: AXMAssetIntervalKind.Distance,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.distance',\n },\n {\n id: AXMAssetIntervalKind.OperatingHours,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.operating-hours',\n },\n {\n id: AXMAssetIntervalKind.OperationCount,\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.options.operation-count',\n },\n];\n\nconst maintenanceFieldVisible = `{{ [true, \"true\"].includes(context.eval(\"hasMaintenance\")) }}`;\n\n//#endregion\n\n//#region ---- Entity Factory ----\n\n/**\n * Entity definition aligned with {@link AXMAssetManagementAssetTypeEntityModel}.\n * Categories use `categoryIds` (see category plugin `propertyName`). `maintenanceTypeIds` is shown when `hasMaintenance` is enabled.\n */\nexport async function factoryAssetType(): Promise<AXPEntity | null> {\n const entityDef: AXPEntity = {\n module: RootConfig.module.name,\n name: RootConfig.entities.assetType.name,\n title: RootConfig.entities.assetType.title,\n icon: RootConfig.entities.assetType.icon,\n searchTags: [\n 'asset-type',\n 'type',\n 'classification',\n 'category',\n 'template',\n 'maintenance',\n 'inspection',\n 'نوع دارایی',\n 'انواع دارایی',\n 'دستهبندی دارایی',\n 'قالب',\n 'نوع',\n 'تصنيف',\n ],\n plugins: [\n // { name: 'unique-fields', options: { fields: 'code', scope: 'global' } },\n { name: 'history' },\n {\n name: 'category',\n options: { appearance: { icon: true, color: true } },\n },\n {\n name: 'meta-data-builder',\n options: {\n display: 'page',\n order: 3,\n },\n },\n // { name: 'identifier', options: { field: 'code', rule: 'asset-type-code' } },\n { name: 'reports' },\n ],\n pages: [\n {\n componentKey: ASSET_TYPE_COMPONENTS_PAGE_COMPONENT_KEY,\n field: 'components',\n title:\n '@asset-management:assetTypes.entities.assetType.components.components.title',\n icon: 'fa-light fa-sitemap',\n layout: { order: 2, position: 'after' },\n options: { order: 2, allowEditSection: false },\n },\n ],\n relatedEntities: [\n {\n entity: 'MaintenanceManagement.ActivityTypeAssetType',\n title:\n '@asset-management:assetTypes.entities.assetType.related-entities.activity-type-asset-types.title',\n icon: 'fa-light fa-link',\n hidden: `{{ ![true, \"true\", 1, \"1\"].includes(context.eval(\"hasMaintenance\")) }}`,\n conditions: [entityDetailsSimpleCondition('assetTypeId')],\n actions: [...entityDetailsCrudActions('assetTypeId')],\n layout: { type: 'page-list', position: 'after', order: 4 },\n },\n {\n entity: 'MaintenanceManagement.MaintenanceTemplate',\n title:\n '@asset-management:assetTypes.entities.assetType.related-entities.maintenance-templates.title',\n icon: 'fa-light fa-clipboard-list',\n hidden: `{{ ![true, \"true\", 1, \"1\"].includes(context.eval(\"hasMaintenance\")) }}`,\n conditions: [entityDetailsSimpleCondition('assetTypeId')],\n actions: [\n {\n title: '@general:actions.create.title',\n command: {\n name: 'Entity:Create',\n options: {\n process: {\n redirect: false,\n canCreateNewOne: true,\n data: {\n assetTypeId: '{{ context.eval(\"id\") }}',\n assetType: {\n id: '{{ context.eval(\"id\") }}',\n title:\n '{{ context.eval(\"title\", { pipes: [\"translate\"] }) }}',\n maintenanceTypeIds:\n '{{ context.eval(\"maintenanceTypeIds\") }}',\n },\n },\n },\n },\n },\n priority: 'primary',\n type: AXPSystemActionType.Create,\n scope: AXPEntityCommandScope.TypeLevel,\n },\n ...entityDetailsCrudActions('assetTypeId', { create: false }),\n ],\n layout: { type: 'page-list', position: 'after', order: 6 },\n },\n ],\n formats: {\n individual: RootConfig.entities.assetType.title,\n plural: RootConfig.entities.assetType.titlePlural,\n searchResult: { title: '{{ title }}' },\n displayName: '@general:terms.common.overview',\n },\n groups: [\n {\n id: 'basic-info',\n title:\n '@asset-management:assetTypes.entities.assetType.groups.basic-info',\n },\n {\n id: 'maintenance-info',\n title:\n '@asset-management:assetTypes.entities.assetType.groups.maintenance-info',\n },\n {\n id: 'components',\n title:\n '@asset-management:assetTypes.entities.assetType.groups.components',\n },\n ],\n properties: [\n {\n name: 'id',\n title: 'ID',\n schema: {\n dataType: 'uuid',\n visible: false,\n nullable: false,\n readonly: true,\n unique: { enabled: true },\n },\n },\n // {\n // name: 'code',\n // title: '@asset-management:assetTypes.entities.assetType.fields.code.title',\n // groupId: 'basic-info',\n // schema: {\n // dataType: 'string',\n // unique: { enabled: true },\n // interface: {\n // type: AXPWidgetsCatalog.text,\n // options: {\n // disabled: true,\n // },\n // },\n // },\n // options: {\n // sort: { enabled: true },\n // filter: { advance: { enabled: true }, inline: { enabled: true } },\n // },\n // validations: [{ rule: 'required' }],\n // },\n {\n name: 'name',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.name.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'title',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.title.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.text,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'hasMaintenance',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.hasMaintenance.title',\n groupId: 'maintenance-info',\n schema: {\n dataType: 'boolean',\n defaultValue: false,\n interface: {\n type: AXPWidgetsCatalog.toggle,\n },\n },\n options: {\n sort: { enabled: true },\n filter: { advance: { enabled: true }, inline: { enabled: true } },\n },\n validations: [{ rule: 'required' }],\n },\n {\n name: 'maintenanceTypeIds',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.maintenanceTypeIds.title',\n groupId: 'maintenance-info',\n schema: {\n dataType: 'array',\n nullable: true,\n defaultValue: [],\n visible: maintenanceFieldVisible,\n interface: {\n type: AXPWidgetsCatalog.lookup,\n options: {\n entity: 'MaintenanceManagement.MaintenanceType',\n textField: 'title',\n valueField: 'id',\n look: 'drop-down',\n multiple: true,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n },\n {\n name: 'supportedIntervalKinds',\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.title',\n groupId: 'maintenance-info',\n schema: {\n dataType: 'array',\n nullable: true,\n defaultValue: [],\n visible: maintenanceFieldVisible,\n interface: {\n type: AXPWidgetsCatalog.select,\n options: {\n valueField: 'id',\n textField: 'title',\n multiple: true,\n allowSearch: false,\n dataSource: supportedIntervalKindDataSource,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n },\n {\n name: 'description',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.description.title',\n groupId: 'basic-info',\n schema: {\n dataType: 'string',\n interface: {\n type: AXPWidgetsCatalog.largeText,\n options: {\n rows: 4,\n },\n },\n },\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: true }, inline: { enabled: false } },\n },\n },\n {\n name: 'components',\n title:\n '@asset-management:assetTypes.entities.assetType.components.components.title',\n groupId: 'components',\n options: {\n sort: { enabled: false },\n filter: { advance: { enabled: false }, inline: { enabled: false } },\n },\n schema: {\n dataType: 'object',\n defaultValue: { sections: [] },\n visible: false,\n nullable: true,\n },\n },\n ],\n columns: [\n { name: 'name', options: { order: 1 } },\n { name: 'title', options: { order: 2 } },\n { name: 'description', options: { order: 3 } },\n {\n name: 'hasMaintenance',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.hasMaintenance.gridTitle',\n options: { order: 4 },\n },\n {\n name: 'maintenanceTypeIds',\n title:\n '@asset-management:assetTypes.entities.assetType.fields.maintenanceTypeIds.gridTitle',\n options: { order: 5 },\n },\n {\n name: 'supportedIntervalKinds',\n title: '@asset-management:assetTypes.entities.assetType.fields.supported-interval-kinds.gridTitle',\n options: { order: 6 },\n },\n ],\n queries: {},\n interfaces: {\n master: {\n create: {\n sections: [\n { id: 'basic-info', order: 1 },\n { id: 'maintenance-info', order: 2 },\n ],\n properties: [\n {\n name: 'name',\n layout: { positions: { lg: { colSpan: 6, order: 2 } } },\n },\n {\n name: 'title',\n layout: { positions: { lg: { colSpan: 6, order: 3 } } },\n },\n {\n name: 'description',\n layout: { positions: { lg: { colSpan: 12, order: 4 } } },\n },\n {\n name: 'hasMaintenance',\n layout: { positions: { lg: { colSpan: 12, order: 5 } } },\n },\n {\n name: 'maintenanceTypeIds',\n layout: { positions: { lg: { colSpan: 12, order: 6 } } },\n },\n {\n name: 'supportedIntervalKinds',\n layout: { positions: { lg: { colSpan: 12, order: 7 } } },\n },\n ],\n },\n update: {\n sections: [\n { id: 'basic-info', order: 1 },\n { id: 'maintenance-info', order: 2 },\n ],\n properties: [\n {\n name: 'name',\n layout: { positions: { lg: { colSpan: 6, order: 2 } } },\n },\n {\n name: 'title',\n layout: { positions: { lg: { colSpan: 6, order: 3 } } },\n },\n {\n name: 'description',\n layout: { positions: { lg: { colSpan: 12, order: 4 } } },\n },\n {\n name: 'hasMaintenance',\n layout: { positions: { lg: { colSpan: 12, order: 5 } } },\n },\n {\n name: 'maintenanceTypeIds',\n layout: { positions: { lg: { colSpan: 12, order: 6 } } },\n },\n {\n name: 'supportedIntervalKinds',\n layout: { positions: { lg: { colSpan: 12, order: 7 } } },\n },\n ],\n },\n single: {\n title: '{{ title }}',\n sections: [\n { id: 'basic-info', order: 1 },\n { id: 'maintenance-info', order: 2 },\n ],\n properties: [\n // { name: 'code', layout: { positions: { lg: { colSpan: 6, order: 1 } } } },\n {\n name: 'name',\n layout: { positions: { lg: { colSpan: 6, order: 2 } } },\n },\n {\n name: 'title',\n layout: { positions: { lg: { colSpan: 6, order: 3 } } },\n },\n {\n name: 'description',\n layout: { positions: { lg: { colSpan: 12, order: 4 } } },\n },\n {\n name: 'hasMaintenance',\n layout: { positions: { lg: { colSpan: 12, order: 5 } } },\n },\n {\n name: 'maintenanceTypeIds',\n layout: { positions: { lg: { colSpan: 12, order: 6 } } },\n },\n {\n name: 'supportedIntervalKinds',\n layout: { positions: { lg: { colSpan: 12, order: 7 } } },\n },\n ],\n actions: [...entityMasterRecordActions()],\n },\n list: {\n actions: [...entityMasterCrudActions()],\n views: [\n createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] }),\n ],\n },\n },\n },\n };\n\n return entityDef;\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './entity-entry.asset-type';\n"],"names":[],"mappings":"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"}
|
package/fesm2022/acorex-platform-module-asset-management-client-contracts-entities-asset.mjs
CHANGED
|
@@ -90,6 +90,7 @@ var AXMAssetStatus;
|
|
|
90
90
|
/** Measurement capabilities an asset type can use for maintenance intervals. Combinations are multiple values, not extra enum members. */
|
|
91
91
|
var AXMAssetIntervalKind;
|
|
92
92
|
(function (AXMAssetIntervalKind) {
|
|
93
|
+
AXMAssetIntervalKind["Schedule"] = "schedule";
|
|
93
94
|
AXMAssetIntervalKind["Date"] = "date";
|
|
94
95
|
AXMAssetIntervalKind["Distance"] = "distance";
|
|
95
96
|
AXMAssetIntervalKind["OperatingHours"] = "operating-hours";
|
|
@@ -523,32 +524,26 @@ async function factoryAsset() {
|
|
|
523
524
|
icon: 'fa-light fa-calendar-check',
|
|
524
525
|
hidden: hideMaintenanceRelatedEntities,
|
|
525
526
|
conditions: [entityDetailsSimpleCondition('assetId')],
|
|
527
|
+
persistence: { foreignKeyField: 'assetId' },
|
|
528
|
+
excludeProperties: ['assetId', 'maintenanceTypeId'],
|
|
526
529
|
actions: [
|
|
527
530
|
{
|
|
528
531
|
title: '@general:actions.create.title',
|
|
532
|
+
icon: 'fa-light fa-plus',
|
|
529
533
|
command: {
|
|
530
534
|
name: 'Entity:Create',
|
|
531
535
|
options: {
|
|
532
536
|
process: {
|
|
533
537
|
redirect: false,
|
|
534
538
|
canCreateNewOne: true,
|
|
535
|
-
data: {
|
|
536
|
-
assetId: '{{ context.eval("id") }}',
|
|
537
|
-
asset: {
|
|
538
|
-
id: '{{ context.eval("id") }}',
|
|
539
|
-
title: '{{ context.eval("title", { pipes: ["translate"] }) }}',
|
|
540
|
-
assetTypeId: '{{ context.eval("assetTypeId") }}',
|
|
541
|
-
assetType: {
|
|
542
|
-
maintenanceTypeIds: '{{ context.eval("assetType.maintenanceTypeIds") }}',
|
|
543
|
-
},
|
|
544
|
-
},
|
|
545
|
-
},
|
|
539
|
+
data: {},
|
|
546
540
|
},
|
|
547
541
|
},
|
|
548
542
|
},
|
|
549
543
|
priority: 'primary',
|
|
550
544
|
type: AXPSystemActionType.Create,
|
|
551
545
|
scope: AXPEntityCommandScope.TypeLevel,
|
|
546
|
+
items: '{{ await MaintenanceManagement.MaintenancePlanCreateActions(context.eval("id")) }}',
|
|
552
547
|
},
|
|
553
548
|
...entityDetailsCrudActions('assetId', { create: false }),
|
|
554
549
|
],
|
|
@@ -1010,6 +1005,16 @@ async function factoryAsset() {
|
|
|
1010
1005
|
},
|
|
1011
1006
|
},
|
|
1012
1007
|
},
|
|
1008
|
+
{
|
|
1009
|
+
name: 'schedule',
|
|
1010
|
+
title: '@asset-management:assets.entities.asset.fields.schedule.title',
|
|
1011
|
+
groupId: 'usage',
|
|
1012
|
+
schema: {
|
|
1013
|
+
dataType: 'object',
|
|
1014
|
+
visible: false,
|
|
1015
|
+
nullable: true,
|
|
1016
|
+
},
|
|
1017
|
+
},
|
|
1013
1018
|
{
|
|
1014
1019
|
name: 'usageValues',
|
|
1015
1020
|
title: '@asset-management:assets.entities.asset.fields.usage-values.title',
|
|
@@ -1147,7 +1152,7 @@ async function factoryAsset() {
|
|
|
1147
1152
|
name: 'usageValues',
|
|
1148
1153
|
layout: {
|
|
1149
1154
|
label: { visible: false },
|
|
1150
|
-
positions: { lg: { colSpan: 12, order:
|
|
1155
|
+
positions: { lg: { colSpan: 12, order: 17 } },
|
|
1151
1156
|
},
|
|
1152
1157
|
},
|
|
1153
1158
|
{
|
|
@@ -1253,7 +1258,7 @@ async function factoryAsset() {
|
|
|
1253
1258
|
name: 'usageValues',
|
|
1254
1259
|
layout: {
|
|
1255
1260
|
label: { visible: false },
|
|
1256
|
-
positions: { lg: { colSpan: 12, order:
|
|
1261
|
+
positions: { lg: { colSpan: 12, order: 17 } },
|
|
1257
1262
|
},
|
|
1258
1263
|
},
|
|
1259
1264
|
{
|
|
@@ -1368,7 +1373,7 @@ async function factoryAsset() {
|
|
|
1368
1373
|
name: 'usageValues',
|
|
1369
1374
|
layout: {
|
|
1370
1375
|
label: { visible: false },
|
|
1371
|
-
positions: { lg: { colSpan: 12, order:
|
|
1376
|
+
positions: { lg: { colSpan: 12, order: 17 } },
|
|
1372
1377
|
},
|
|
1373
1378
|
},
|
|
1374
1379
|
{
|