@trudb/tru-common-lib 0.0.450 → 0.0.451

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.
@@ -1,12 +1,75 @@
1
- import { Component } from '@angular/core';
1
+ import { Component, Input } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ import * as i1 from "../../services/tru-data-context";
4
+ import * as i2 from "../../services/tru-text-manager";
3
5
  export class TruDetailViewBase {
4
- constructor() { }
6
+ constructor(dataContext, textManager) {
7
+ this.dataContext = dataContext;
8
+ this.textManager = textManager;
9
+ this.tableName = '';
10
+ this.entities = [];
11
+ this.recordLocation = null;
12
+ this.disableNavigationToPreviousEntity = false;
13
+ this.disableNavigationToNextEntity = false;
14
+ this.navigationIndex = 0;
15
+ this.onAddEntity = () => {
16
+ let newEntity = this.dataContext.entityAccess().add(this.entityType);
17
+ this.entities.splice(this.navigationIndex + 1, 0, newEntity);
18
+ this.navigateTo(this.navigationIndex + 1);
19
+ };
20
+ this.onCloneEntity = () => {
21
+ };
22
+ this.onDeleteEntity = () => {
23
+ let confirmMsg = this.textManager.fmtDeleteConfirmation(this.entityType.name);
24
+ this.dataContext.delete([this.entity], confirmMsg, () => { return true; });
25
+ };
26
+ this.onFirstEntity = () => {
27
+ this.navigateTo(0);
28
+ };
29
+ this.onPreviousEntity = () => {
30
+ this.navigateTo(this.navigationIndex - 1);
31
+ };
32
+ this.onNextEntity = () => {
33
+ this.navigateTo(this.navigationIndex + 1);
34
+ };
35
+ this.onLastEntity = () => {
36
+ this.navigateTo(this.entities.length - 1);
37
+ };
38
+ this.navigateTo = (index) => {
39
+ this.setNavigationIndex(index);
40
+ this.setEntityDisplayValues(this.tableName);
41
+ };
42
+ this.setNavigationIndex = (index) => {
43
+ this.navigationIndex = index;
44
+ this.disableNavigationToPreviousEntity = index === 0;
45
+ this.disableNavigationToNextEntity = index === this.entities.length - 1;
46
+ this.entity = this.entities[this.navigationIndex];
47
+ };
48
+ this.setEntityDisplayValues = (tableName) => {
49
+ let title = '';
50
+ let recordIndex = '?';
51
+ let entity = this.entities[this.navigationIndex];
52
+ if (entity) {
53
+ title = tableName + ' - ';
54
+ if (entity.entityAspect.entityState.isAdded()) {
55
+ title += 'New Record';
56
+ }
57
+ else {
58
+ title += this.entity.HID;
59
+ }
60
+ recordIndex = (this.navigationIndex + 1).toString();
61
+ }
62
+ this.view.window.title = this.textManager.formatWindowTitle(title);
63
+ this.recordLocation = recordIndex + ' of ' + this.entities.length;
64
+ };
65
+ }
5
66
  }
6
- TruDetailViewBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDetailViewBase, deps: [], target: i0.ɵɵFactoryTarget.Component });
7
- TruDetailViewBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: TruDetailViewBase, selector: "tru-detail-view-base", ngImport: i0, template: "", styles: [""] });
67
+ TruDetailViewBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDetailViewBase, deps: [{ token: i1.TruDataContext }, { token: i2.TruTextManager }], target: i0.ɵɵFactoryTarget.Component });
68
+ TruDetailViewBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.1", type: TruDetailViewBase, selector: "tru-detail-view-base", inputs: { view: "view" }, ngImport: i0, template: "", styles: [""] });
8
69
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: TruDetailViewBase, decorators: [{
9
70
  type: Component,
10
71
  args: [{ selector: 'tru-detail-view-base', template: "" }]
11
- }], ctorParameters: function () { return []; } });
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRldGFpbC12aWV3LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2Jhc2Utdmlld3MvZGV0YWlsL3RydS1kZXRhaWwtdmlldy1iYXNlLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9iYXNlLXZpZXdzL2RldGFpbC90cnUtZGV0YWlsLXZpZXctYmFzZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTzFDLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsZ0JBQWdCLENBQUM7OzhHQUROLGlCQUFpQjtrR0FBakIsaUJBQWlCLDREQ1A5QixFQUFBOzJGRE9hLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndHJ1LWRldGFpbC12aWV3LWJhc2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90cnUtZGV0YWlsLXZpZXctYmFzZS5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90cnUtZGV0YWlsLXZpZXctYmFzZS5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1RGV0YWlsVmlld0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcbn1cclxuIiwiIl19
72
+ }], ctorParameters: function () { return [{ type: i1.TruDataContext }, { type: i2.TruTextManager }]; }, propDecorators: { view: [{
73
+ type: Input
74
+ }] } });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWRldGFpbC12aWV3LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2Jhc2Utdmlld3MvZGV0YWlsL3RydS1kZXRhaWwtdmlldy1iYXNlLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9iYXNlLXZpZXdzL2RldGFpbC90cnUtZGV0YWlsLXZpZXctYmFzZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBVWpELE1BQU0sT0FBTyxpQkFBaUI7SUFZNUIsWUFDVSxXQUEyQixFQUMzQixXQUEyQjtRQUQzQixnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBWHJDLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFDdkIsYUFBUSxHQUFlLEVBQUUsQ0FBQztRQUcxQixtQkFBYyxHQUFrQixJQUFJLENBQUM7UUFDckMsc0NBQWlDLEdBQVksS0FBSyxDQUFDO1FBQ25ELGtDQUE2QixHQUFZLEtBQUssQ0FBQztRQUMvQyxvQkFBZSxHQUFXLENBQUMsQ0FBQztRQU01QixnQkFBVyxHQUFHLEdBQUcsRUFBRTtZQUNqQixJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQzdELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUE7UUFF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QUFpQixzRkNWOUIsRUFBQTsyRkRVYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0Usc0JBQXNCO2tJQUt2QixJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRydURlc2t0b3BWaWV3Q29uZmlnIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9kZXNrdG9wL2NsYXNzZXMvdHJ1LWRlc2t0b3Atdmlldy1jb25maWcnO1xyXG5pbXBvcnQgeyBUcnVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RydS1kYXRhLWNvbnRleHQnO1xyXG5pbXBvcnQgeyBUcnVUZXh0TWFuYWdlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RydS10ZXh0LW1hbmFnZXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0cnUtZGV0YWlsLXZpZXctYmFzZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RydS1kZXRhaWwtdmlldy1iYXNlLmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RydS1kZXRhaWwtdmlldy1iYXNlLmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVEZXRhaWxWaWV3QmFzZSB7XHJcbiAgQElucHV0KCkgdmlldyE6IFRydURlc2t0b3BWaWV3Q29uZmlnO1xyXG5cclxuICB0YWJsZU5hbWU6IHN0cmluZyA9ICcnO1xyXG4gIGVudGl0aWVzOiBBcnJheTxhbnk+ID0gW107XHJcbiAgZW50aXR5OiBhbnk7XHJcbiAgZW50aXR5VHlwZTogYW55O1xyXG4gIHJlY29yZExvY2F0aW9uOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBkaXNhYmxlTmF2aWdhdGlvblRvUHJldmlvdXNFbnRpdHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBkaXNhYmxlTmF2aWdhdGlvblRvTmV4dEVudGl0eTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG5hdmlnYXRpb25JbmRleDogbnVtYmVyID0gMDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRhdGFDb250ZXh0OiBUcnVEYXRhQ29udGV4dCxcclxuICAgIHByaXZhdGUgdGV4dE1hbmFnZXI6IFRydVRleHRNYW5hZ2VyKSB7fVxyXG5cclxuICBvbkFkZEVudGl0eSA9ICgpID0+IHtcclxuICAgIGxldCBuZXdFbnRpdHkgPSB0aGlzLmRhdGFDb250ZXh0LmVudGl0eUFjY2VzcygpLmFkZCh0aGlzLmVudGl0eVR5cGUpO1xyXG4gICAgdGhpcy5lbnRpdGllcy5zcGxpY2UodGhpcy5uYXZpZ2F0aW9uSW5kZXggKyAxLCAwLCBuZXdFbnRpdHkpO1xyXG4gICAgdGhpcy5uYXZpZ2F0ZVRvKHRoaXMubmF2aWdhdGlvbkluZGV4ICsgMSk7XHJcbiAgfVxyXG5cclxuICBvbkNsb25lRW50aXR5ID0gKCkgPT4ge1xyXG5cclxuICB9XHJcblxyXG4gIG9uRGVsZXRlRW50aXR5ID0gKCkgPT4ge1xyXG4gICAgbGV0IGNvbmZpcm1Nc2cgPSB0aGlzLnRleHRNYW5hZ2VyLmZtdERlbGV0ZUNvbmZpcm1hdGlvbih0aGlzLmVudGl0eVR5cGUubmFtZSk7XHJcbiAgICB0aGlzLmRhdGFDb250ZXh0LmRlbGV0ZShbdGhpcy5lbnRpdHldLCBjb25maXJtTXNnLCAoKSA9PiB7IHJldHVybiB0cnVlOyB9KTtcclxuICB9XHJcblxyXG4gIG9uRmlyc3RFbnRpdHkgPSAoKSA9PiB7XHJcbiAgICB0aGlzLm5hdmlnYXRlVG8oMCk7XHJcbiAgfVxyXG5cclxuICBvblByZXZpb3VzRW50aXR5ID0gKCkgPT4ge1xyXG4gICAgdGhpcy5uYXZpZ2F0ZVRvKHRoaXMubmF2aWdhdGlvbkluZGV4IC0gMSk7XHJcbiAgfVxyXG5cclxuICBvbk5leHRFbnRpdHkgPSAoKSA9PiB7XHJcbiAgICB0aGlzLm5hdmlnYXRlVG8odGhpcy5uYXZpZ2F0aW9uSW5kZXggKyAxKTtcclxuICB9XHJcblxyXG4gIG9uTGFzdEVudGl0eSA9ICgpID0+IHtcclxuICAgIHRoaXMubmF2aWdhdGVUbyh0aGlzLmVudGl0aWVzLmxlbmd0aCAtIDEpO1xyXG4gIH1cclxuXHJcbiAgbmF2aWdhdGVUbyA9IChpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICB0aGlzLnNldE5hdmlnYXRpb25JbmRleChpbmRleCk7XHJcbiAgICB0aGlzLnNldEVudGl0eURpc3BsYXlWYWx1ZXModGhpcy50YWJsZU5hbWUpO1xyXG4gIH1cclxuXHJcbiAgc2V0TmF2aWdhdGlvbkluZGV4ID0gKGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgIHRoaXMubmF2aWdhdGlvbkluZGV4ID0gaW5kZXg7XHJcbiAgICB0aGlzLmRpc2FibGVOYXZpZ2F0aW9uVG9QcmV2aW91c0VudGl0eSA9IGluZGV4ID09PSAwO1xyXG4gICAgdGhpcy5kaXNhYmxlTmF2aWdhdGlvblRvTmV4dEVudGl0eSA9IGluZGV4ID09PSB0aGlzLmVudGl0aWVzLmxlbmd0aCAtIDE7XHJcbiAgICB0aGlzLmVudGl0eSA9IHRoaXMuZW50aXRpZXNbdGhpcy5uYXZpZ2F0aW9uSW5kZXhdO1xyXG4gIH1cclxuXHJcbiAgc2V0RW50aXR5RGlzcGxheVZhbHVlcyA9ICh0YWJsZU5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgbGV0IHRpdGxlID0gJyc7XHJcbiAgICBsZXQgcmVjb3JkSW5kZXggPSAnPyc7XHJcbiAgICBsZXQgZW50aXR5ID0gdGhpcy5lbnRpdGllc1t0aGlzLm5hdmlnYXRpb25JbmRleF07XHJcbiAgICBpZiAoZW50aXR5KSB7XHJcbiAgICAgIHRpdGxlID0gdGFibGVOYW1lICsgJyAtICc7XHJcbiAgICAgIGlmIChlbnRpdHkuZW50aXR5QXNwZWN0LmVudGl0eVN0YXRlLmlzQWRkZWQoKSkge1xyXG4gICAgICAgIHRpdGxlICs9ICdOZXcgUmVjb3JkJztcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aXRsZSArPSB0aGlzLmVudGl0eS5ISUQ7XHJcbiAgICAgIH1cclxuICAgICAgcmVjb3JkSW5kZXggPSAodGhpcy5uYXZpZ2F0aW9uSW5kZXggKyAxKS50b1N0cmluZygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy52aWV3LndpbmRvdy50aXRsZSA9IHRoaXMudGV4dE1hbmFnZXIuZm9ybWF0V2luZG93VGl0bGUodGl0bGUpO1xyXG4gICAgdGhpcy5yZWNvcmRMb2NhdGlvbiA9IHJlY29yZEluZGV4ICsgJyBvZiAnICsgdGhpcy5lbnRpdGllcy5sZW5ndGg7XHJcbiAgfVxyXG59XHJcbiIsIiJdfQ==